sql >> データベース >  >> RDS >> Database

SQLで重複を表示しない方法

    問題:

    SQLで重複しないレコードを表示したい。

    例:

    私たちのデータベースには、City id列にデータがあります 、name 、およびcountry

    id 名前
    1 マドリード スペイン
    2 バルセロナ スペイン
    3 ワルシャワ ポーランド
    4 クラコウ ポーランド

    重複することなく国の名前を取得しましょう。

    解決策:

    キーワードDISTINCTを使用します 。クエリは次のとおりです:

    SELECT
    DISTINCT country
    FROM City;
    

    クエリの結果は次のとおりです。

    スペイン
    ポーランド

    ディスカッション:

    クエリが一意の行のみを返すようにする場合は、キーワードDISTINCTを使用します SELECTの後 。 DISTINCT 1つ以上の列から一意の行をフェッチするために使用できます。 DISTINCTの後に列をリストする必要があります キーワード。

    内部ではどのように機能しますか?クエリが実行されると、最初にデータセット全体が選択され、次にDISTINCTが選択されます。 選択した列を指定して重複している行を削除します。

    この例では、スペインとポーランドの両方がテーブルで2回発生しています。ただし、キーワードDISTINCTを適用した後 、それぞれが1回だけ返されます。


    1. MS-SQLテーブルデザイナでの角かっこ[]の意味は?

    2. Oracleデータベース内のすべての関数とプロシージャのリストを取得します

    3. SQLServerの既存のテーブルにデフォルト値の列を追加します

    4. データストレージ:アーカイブおよびHSMのRESTとPOSIX