SELECT COUNT DISTINCT でキーを特定する
既存のデータが入ったテーブルで、キーに該当するものを見つけるためのごく基本的な方法を紹介します。
すべての列の組み合わせについて、重複のないレコード数を数えます。ある組み合わせで得られた数値
xがテーブルの全行数と等しければ、それはスーパーキーです。次に、列を1つずつ削除していき、列を削除しても数値
xが減らなくなるまで続けます。その状態になったら、(候補)キーを見つけたことになります。
テーブル professors には551行あります。このテーブルには候補キーが1つだけあり、2つの属性の組み合わせで構成されています。「コードを実行」ボタンを使って、さまざまな組み合わせを試してみてください。解答が見つかったら、回答を送信してください。
この演習はコースの一部です
SQL リレーショナルデータベース入門
演習の手順
上記の手順に従い、さまざまな列の組み合わせを試して候補キーを特定しましょう。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
-- Try out different combinations
___ COUNT(___(___))
FROM professors;