SQL SELECT DISTINCTステートメント
SQL SELECT DISTINCTステートメント
SELECT DISTINCT
ステートメントは、個別の (異なる) 値のみを返すために使用されます。
テーブル内では、列に多くの重複値が含まれることがよくあります。また、異なる (個別の) 値のみをリストしたい場合もあります。
SELECT DISTINCT構文
SELECT DISTINCT <em>column1</em>,<em> column2, ...</em>
FROM <em>table_name</em>;
デモデータベース
以下は、Northwindサンプルデータベースの"Customers"テーブルからの選択です。
顧客ID |
顧客名 |
連絡先 |
住所 |
街 |
郵便番号 |
国 |
---|---|---|---|---|---|---|
1 | アルフレッド・フッターキステ | マリア・アンダース | オベレ通り57 | ベルリン | 12209 | ドイツ |
2 | アナ・トルヒーヨ サンドイッチとアイスクリーム | アナ・トルヒーヨ | コンスティトゥシオン通り2222番地 | メキシコDF | 05021 | メキシコ |
3 | アントニオ・モレノ・タケリア | アンソニー・モレノ | マタデロス 2312 | メキシコDF | 05023 | メキシコ |
4 | アラウンドホーン | トーマス・ハーディ | 120 ハノーバー スクエア | ロンドン | WA1 1DP | イギリス |
5 | バーグルンドのスーパーマーケット | クリスティーナ・ベルグルンド | ベルグヴスヴェーゲン8 | ルレオ | S-958 22 | スウェーデン |
DISTINCTを使用しないSELECTの例
次のSQL ステートメントは、"Customers"テーブルの"Country"列からすべての (重複を含む) 値を選択します。
では、SELECT DISTINCT
ステートメントと結果を参照してください。
SELECT DISTINCTの例
次のSQLステートメントは、"Customers"テーブルの"Country"列から DISTINCT値のみを選択します。
次のSQLステートメントは、さまざまな (異なる) 顧客の国の数を一覧表示します。
注: 上記の例は Firefox では機能しません!
COUNT(DISTINCT*column_name*) は、Microsoft Accessデータベースではサポートされていません。
この例では、FirefoxはMicrosoft Accessを使用しています。
MS Accessの回避策は次のとおりです。
例
SELECT Count(*) AS DistinctCountries
FROM (SELECT DISTINCT Country FROM Customers);
プログラミング学習を加速させる
プログラミングをプロの講師に教えてもらいませんか。