我正在爲我的sql查詢結果尋找另一個解決方案。下面通過在SQL Server中保持相同順序避免重複行
我的查詢返回
SELECT
M.Mroutes_srno, M.Mroutes_loginid
FROM
Mroutes M
LEFT JOIN
MAccSanctioningLimit Limit ON M.mroutes_role = Limit.sac_type
AND M.Mroutes_moduleno = Limit.sac_moduleno
AND M.Mroutes_companycd = Limit.company_cd
WHERE
M.mroutes_deptcd = 'BKAF'
AND M.Mroutes_moduleno = 145
AND M.mroutes_role NOT IN ('MIS', 'CFO', 'MD')
輸出:
Mroutes_srno Mroutes_loginid
--------------------------------
1 -------- AIJ1546
2 -------- BCS8021
3 -------- AIJ1546
4 -------- BCS8021
5 -------- venkatesh
6 -------- 151N1636
但是,刪除重複的行就會導致像下面後。
SELECT
M.Mroutes_loginid
FROM
Mroutes M
LEFT JOIN
MAccSanctioningLimit Limit ON M.mroutes_role = Limit.sac_type
AND M.Mroutes_moduleno = Limit.sac_moduleno
AND M.Mroutes_companycd = Limit.company_cd
WHERE
M.mroutes_deptcd = 'BKAF'
AND M.Mroutes_moduleno = 145
AND M.mroutes_role NOT IN ('MIS', 'CFO', 'MD')
GROUP BY
M.Mroutes_loginid
輸出:
Mroutes_loginid
---------------
151N1636
AIJ1546
BCS8021
venkatesh
我需要保持該查詢相同的順序。
將訂單條款添加到您的查詢中。類似於「由M.Mroutes_srno ASC訂購」。 –
目前還不清楚你的問題是什麼,或者你想達到什麼目的。如果你想要的是一致的順序,你可以使用Mroutes_loginid命令。 –
*我需要以相同的順序保留查詢。* - 在這種情況下,您必須在您的SELECT中明確指定一個ORDER BY子句。 –