→ JYHuang:ㄜ....試出答案了...只是跟原先想的走不同的方向...11/21 23:54
→ adrianshum:AA, BB, A01, A02. 你不能寫得易讀一點才發問嗎? orz11/23 11:35
DataBase版推文限制限好久 ="=
ERP系統裡的TABLE name命名本來就沒那麼直覺了
如果不精簡一點而照schema打的話,落落長一篇反而不好抓問題吧
--
原本我是以刷卡資料(AMSMC)為主table
人事資料(CMSMV) Join進來,然後遇到上面刷卡資料重複的一些問題。
現在改成這樣的架構
人事資料(CMSMV) 刷卡資料(AMSMC) 請假資料(PALTF)
MV001 工號 MC001 工號 TF001 工號
MV002 姓名 MC002 日期 TF002 日期
MC003 時間 TF011 核準
MC007 上下班
SELECT * FROM CMSMV
LEFT OUTER JOIN (SELECT MC001,MC002,Min(MC003) as MC003,MC007
FROM AMSMC
GROUP BY MC001,MC002,MC007
HAVING MC007='上班'
) AS B
ON MV001 = B.MC001
LEFT JOIN PALTF
ON TF001 = MV001
LEFT JOIN ....
ON ...
WHERE (ISNULL(TF011,'Y') = 'N')
AND.....
先把刷卡資料做過濾再Join進來
才不用煩惱要怎麼做group...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.39.163.122