DISTINCT
語法讓重複紀錄只輸出一筆。
mysql> select distinct name,foot -> from animals -> order by name; name foot cat 4 chicken 2 dog 4 mysql>
SELECT ... GROUP BY ...
語法可以自行組合重複紀錄判斷欄位。
mysql> select name,foot from animals -> group by name,foot; name foot cat 4 chicken 2 dog 4 mysql>
DISTINCT
與 SELECT ... GROUP BY ...
語法之差異,先輸出目前資料表的內容有三筆紀錄。
mysql> select * from animals; id name foot 1 dog 4 15 cat 4 16 chicken 2
DISTINCT
語法指定「組合的欄位」只輸出一筆,也輸出「組合的欄位」,無法輸出其他欄位。
mysql> select distinct foot from animals; foot 4 2
DISTINCT name,foot
表示欄位 name+foot 組合不重複,只輸出欄位 name 及 foot。
mysql> select distinct name,foot from animals; name foot dog 4 cat 4 chicken 2
SELECT ... GROUP BY ...
語法,select *
輸出所有欄位內容,group by foot
指定欄位 foot 成群組,也就是只輸出一筆。
mysql> select * from animals group by foot; id name foot 16 chicken 2 1 dog 4