我一直在努力使用SQL Server查詢一段時間,並意識到我必須從知道SQL Server(很多)的人那裏得到更多幫助。從SQL Server中獲取最大值加入
環境:SQL Server 2008中
SELECT
t1.SUPPL_ORDERNO,
t2.OUR_ORDER,
t3.CUST_INVOICE
FROM t1
LEFT OUTER JOIN t2
ON t1.SUPPL_ORDERNO = t2.ORDER_REM5
LEFT OUTER JOIN t3
ON t2.ORDER_REM5 = t3.INV_REM5
GROUP BY t1.SUPPL_ORDERNO, t2.OUR_ORDER, t3.CUST_INVOICE
ORDER BY t1.SUPPL_ORDERNO,t3.CUST_INVOICE
這是結果我用上面的查詢得到:
SUPPL_ORDERNO OUR_ORDER CUST_INVOICE
------------------------------ --------- ------------
143914 64228 179890
143914 64228 179935
143914 64228 179995
143914 64228 179999
143914 64228 180067
143914 64228 180148
326042
326052 64549 180219
326086 64633
我得到每個SUPPL_ORDERNO
和OUR_ORDER
組合的多個CUST_INVOICE
但我只想要回最新的CUST_INVOICE
(=最大的發票號碼)。
這是我想要返回的結果:
SUPPL_ORDERNO OUR_ORDER CUST_INVOICE
------------------------------ --------- ------------
143914 64228 180148
326042
326052 64549 180219
326086 64633
摘要:
- 如果有超過一(1)
CUST_INVOICE
因爲我只想展現SUPPL_ORDERNO
和OUR_ORDER
組合CUST_INVOICE
與最大數 - 如果沒有
OUR_ORDER
和否CUST_INVOICE
我希望它顯示爲空 - ,如果有一個
OUR_ORDER
沒有CUST_INVOICE
我想它顯示爲空
任何幫助,將不勝感激!