2011年12月29日 星期四

Distinct 不能做到的 多欄 或 多個欄位 的 做法


Distinct 只能撈一個欄位出來,後面的連帶欄位無法撈出,所以我們用另外一種做法


假設【A1資料表】裡面有,編號有重複,要過濾編號又要最新的更改次數,連後面的【公司名稱、姓名、地址、電話】都要一併撈出

【做法】

From裡面 select 編號,Max(更新次數) from A1 group by  編號 建一個 【A2 資料表】
另外後面 再加上原本的  【A1 資料表名稱】
然後在 Where 比對我們要的最新資料
WHERE A2.編號 = A1編號 and a2.更新次數 = A1.更新次數

資料就能抓出來了

主要再於A2 只有撈兩個關鍵欄位,再去WHERE 裡面 比對資料

【研究花費我四個小時】

SQL指令如下:
SELECT 編號,公司名稱,姓名,地址,電話 from
(select 編號,Max(更新次數) from A1 group by  編號) A2 , A1
WHERE A2.編號 = A1編號 and a2.更新次數 = A1.更新次數



沒有留言:

張貼留言