表a:
表b:
select distinct name from a執行後結果如下:
示例2.1
select distinct name, id from a執行後結果如下:
實際上是根據name和id兩個欄位來去重的,這種方式access和sql server同時支援。
示例2.2
select distinct xing, ming from b返回如下結果:
返回的結果為兩行,這說明distinct並非是對xing和ming兩列「字串拼接」後再去重的,而是分別作用於了xing和ming列。
select count(distinct name) from a; --表中name去重後的數目, sql server支援,而access不支援count是不能統計多個欄位的,下面的sql在sql server和access中都無法執行。
select count(distinct name, id) from a;若想使用,請使用巢狀查詢,如下:
select count(*) from (select distinct xing, name from b) as m;
select id, distinct name from a; --會提示錯誤,因為distinct必須放在開頭distinct語句中select顯示的字段只能是distinct指定的字段,其他欄位是不可能出現的。例如,假如表a有「備註」列,如果想獲取distinc name,以及對應的「備註」字段,想直接通過distinct是不可能實現的。但可以通過其他方法實現關於sql server將一列的多行內容拼接成一行的問題討
sql中DISTINCT的用法
表a 示例1select distinct name from a執行後結果如下 示例2select distinct name,id from a執行後結果如下 實際上是根據 name id 來去重,distinct同時作用在了name和id上,這種方式access和sql server同時支援。...
SQL中distinct的用法
在使用mysql時,有時需要查詢出某個欄位不重複的記錄,雖然mysql提供有distinct這個關鍵字來過濾掉多餘的重覆記錄只保留一條,但往往只 用它來返回不重覆記錄的條數,而不是用它來返回不重記錄的所有值。其原因是distinct只能返回它的目標字段,而無法返回其它字段,這個問題讓我困擾很久,用d...
SQL中distinct的用法
表a 表b select distinct name from a執行後結果如下 示例2.1 select distinct name,id from a執行後結果如下 實際上是根據name和id兩個欄位來去重的,這種方式access和sql server同時支援。示例2.2 select dist...