我想加入2個表,但表只有B選擇值其中id是最大的和2列的表之間的匹配選擇最高值A & B.加入2個表,其中對另一個表
我都試過,但由於表2的最高值,它只選擇1行,但我需要顯示整個表A.下面
WITH CTE AS
(
SELECT DocNum, Status
FROM TableB
WHERE Id = (SELECT MAX(Id) FROM TableB)
)
SELECT TableA.DocNum, DocTitle, cte.Status
FROM TableA
INNER JOIN cte
ON TableA.DocNum = cte.DocNum
例如:
Table A
Id DocNum DocTitle
1 ST-0001 SomeTitle
2 ST-0002 SomeTitle
3 ST-0003 SomeTitle
4 ST-0004 SomeTitle
5 ST-0005 SomeTitle
Table B
Id DocNum Status
1 ST-0001 Incomplete
2 ST-0001 Complete
3 ST-0002 Complete
4 ST-0003 Incomplete
5 ST-0004 Incomplete
6 ST-0004 Complete
7 ST-0005 Incomplete
Result
DocNum DocTitle Status
ST-0001 SomeTitle Complete
ST-0002 SomeTitle Complete
ST-0003 SomeTitle Incomplete
ST-0004 SomeTitle Complete
ST-0005 SomeTitle Incomplete
你嘗試過什麼到目前爲止,來解決這個問題? –
您正在使用哪種版本的SQL(例如MySQL,SQL Server等)?你嘗試過什麼嗎? –
'Join','Group by'是解決方案 –