ホームページ >php教程 >PHP开发 >SQLでのdistinctの使用法

SQLでのdistinctの使用法

高洛峰
高洛峰オリジナル
2016-12-13 09:25:502794ブラウズ

表には重複する値が存在する可能性があります。これは問題ではありませんが、単に個別の値をリストしたい場合もあります。キーワード unique は、一意に異なる値を返すために使用されます。 table a:

SQLでのdistinctの使用法tableb:

SQLでのdistinctの使用法1単一の列に作用します。実行後の結果は次のとおりです。複数の列に作用します

例 2.1

A から個別の名前、ID を選択します

実行後の結果は次のようになります:

SQLでのdistinctの使用法

実際には、名前と ID の 2 つのフィールドに基づいて重複が削除されます。このメソッドは、Access と SQL Server で同時にサポートされています。

例 2.2

select unique xing, ming from B

は次の結果を返します:

SQLでのdistinctの使用法

返された結果は 2 行であり、distinct が xing 列と ming 列の「文字列の結合」ではないことを示しています。重複排除は、xing 列と ming 列にそれぞれ適用されます。

3.COUNT 統計

select count(distinct name) from A; -- 重複排除後のテーブル内の名前の数。SQL Server はサポートしていますが、Access はサポートしていません

count は複数のフィールドをカウントできません。 SQL は SQL Server と Access の両方で実行に失敗します。

select count(distinct name, id) from A;SQLでのdistinctの使用法

これを使用したい場合は、次のようにネストされたクエリを使用してください:

select count(*) from (select unique xing, name from B) AS M ;


4.distinct は先頭に配置する必要があります

select id、distinct name from A; --distinct は先頭に配置する必要があるため、エラーが表示されます


5. に表示される他の

フィールドselect ステートメントは個別のフィールドでのみ指定でき、他のフィールドを指定することはできません。たとえば、テーブル A に「備考」列がある場合、distinct 名と対応する「備考」フィールドを取得したい場合、distinct を使用して直接取得することはできません。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。