用 SELECT COUNT DISTINCT 辨識鍵
在既有且已填入資料的資料表中,有一個很基本的方法可以找出哪些欄位符合鍵的條件:
針對所有可能的欄位組合,計算不同紀錄的數量。若某個組合得到的數字
x等於表中的總列數,你就找到一個超鍵(superkey)。接著逐一移除欄位,直到再移除任何欄位都會使
x下降為止。達到這個條件時,你就找到一個(候選)鍵。
資料表 professors 共有 551 列。它只有一個可能的候選鍵,且由兩個屬性組成。你可以使用「Run code」按鈕嘗試不同的組合。找到解答後,再送出你的答案。
本練習屬於課程
SQL 關聯式資料庫入門
練習說明
依照上述步驟,嘗試不同的欄位組合,找出候選鍵。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
-- Try out different combinations
___ COUNT(___(___))
FROM professors;