1. 程式人生 > >MySQL 的 DISTINCT 應用於2列時

MySQL 的 DISTINCT 應用於2列時

mysql 選中 span tinc price 最終 使用 rdquo spa

SELECT DISTINCT vend_id告訴MySQL只返回不同(唯一)的 vend_id行,也就是在vend_id 有重復的行中,只保留一行,其他的不作輸出。比如我創建了如下的student表:

技術分享圖片

當我使用 SELECT DISTINCT Sdept FROM student; 後的輸出為:

技術分享圖片

但是;

“不能部分使用DISTINCT DISTINCT關鍵字應用於所有列而 不僅是前置它的列。如果給出SELECT DISTINCT vend_id, prod_price,除非指定的兩個列都不同,否則所有行都將被 檢索出來。 ” 《MySQL必知必會》

就是被選中的兩列要綜合起來一起考慮,比如我使用 SELECT DISTINCT Sdept,Ssex FROM student; 得到的輸出為:

技術分享圖片

因為原始的表‘中 Sdept=CS 且 Ssex=‘女‘ 的有兩個,所以二者取其一,同理 Sdept=WL 且 Ssex=‘男‘的也是一樣的道理,最終的輸出如上!

MySQL 的 DISTINCT 應用於2列時