web-dev-qa-db-ja.com

複数の列でSELECT DISTINCTを呼び出す

私は正確に何が起こっているのかはっきりしない

SELECT DISTINCT col1, col2, ...
FROM table_name

1つの列で呼び出されると、その列の異なる値のみが返されます。複数の列で使用するとどうなりますか?

4
Aaron Zolotor

これはどのように正確に機能しますか?

SELECTリスト内のすべての式の明確な組み合わせを提供します。

SELECT DISTINCT col1, col2, ... 
FROM table_name ;

また、以下と同等です。

SELECT col1, col2, ... 
FROM table_name 
GROUP BY  col1, col2, ... ;

それがどのように機能するかを調べる別の方法-おそらくより正確-は、それが共通のSELECTALL)として機能し、重複する行を削除することです。 SELECTDISTINCT に関するPostgresのドキュメントを参照してください。

これを行う必要がありますか?

もちろん。必要な場合は使用できます。

7
ypercubeᵀᴹ