Contents

group by 和distinct不一樣的地方

Contents

今天做專案,使用到select xxx,ooo ,zzzz from xxxx group by xxx,ooo 語句(沒有搭配統計)
發現跟我想像中怪怪的
平常使用都是用
一開始我以為會有重複資料
但結果沒有

不過發現執行結果跟distanct一樣事情
但我印象中db2不能這樣跑
db2一定要group by xxx,ooo,zzz才能跑
就算mysql做group by xxx,ooo跑出來的zzz也只有一個欄位
跑出來的zzz只會有一筆(假如有兩筆以上,不知道是不是照自然排序抓出來的)

然後找不到db2語法
但還是有找到,其他DBMS都不能跑

  1. mysql的group by 語句可以select 沒有被分組的欄位,如
    select id,name,age from A group by age 這樣
    但是在orcale和sqlserver中是會報錯的。這個取出的id,name所在的行是每個分組中的第一行數據。
    www.zendei.com | 502: Bad gateway
    你搞懂 ORACLE、 SQLSERVER、MYSQL與DB2的區別了嗎_ZenDei技術網路在線