使用SQL Server 2000製作表格加入問題?
有兩個表
表1
Date ID
20090101 001
20090102 001
….
20090101 002
20090102 002
…
20090101 003
20090102 003
…
於是就..,
表2
ID Name Date
001 Raja 20090408
001 Raja 20090502
001 Raja 20090503
002 Ravi 20090312
002 Ravi 20090522
003 Saga 20090802
003 Saga 20091022
於是就..,
查詢
SELECT
Table1.Date, Table1.ID,
Table2.Name, Table2.Date
FROM table1
INNER JOIN table2 ON table1.id = table2.id
ORDER BY table1.id, table1.date
輸出
Date ID Name Table2.Date
20090101 001 Raja 20090408
20090101 001 Raja 20090502
20090101 001 Raja 20090503
20090102 001 Raja 20090408
20090102 001 Raja 20090502
20090102 001 Raja 20090503
…
20090101 002 Ravi 20090312
20090101 002 Ravi 20090522
20090102 002 Ravi 20090312
20090102 002 Ravi 20090522
…
...等,
爲什麼我一次又一次地得到一個table1.date。我想要這樣顯示。
期望輸出
Date ID Name Table2.Date
20090101 001 Raja -
…
20090502 001 Raja 20090502
20090503 001 Raja 20090503
…
20090107 001 Raja -
20090108 001 Raja 20090408
….
...等,
我把 「 - 」,而不是空列
Table2.Date should equal to Table1.Date, means
Table1.Date, Table1.ID should display all the columns,
Table2.Date should display with Table1.Date Related column.
例。
Table2 Column Values are
Date - 20090203, 20090205...,
Table1.ID Table1.Date Table2.Date
001 20090201
001 20090202
001 20090203 20090203
001 20090204
001 20090205 20090205
001 20090206
...,
之前,我做在Access查詢2003
SELECT AllPossibleCardEvents.Id, AllPossibleCardEvents.Date, Actual.Date AS Table2Date FROM ((SELECT p.Id, AllDates.Date FROM (SELECT DISTINCT Date FROM table2) AllDates, table1 p) AllPossibleCardEvents LEFT OUTER JOIN table2 Actual ON AllPossibleCardEvents.Id = Actual.Id AND AllPossibleCardEvents.tDate = Actual.Date))
現在上面的查詢工作完全爲我預期的輸出接入
如何使這種情況下的SQL查詢?
需要查詢幫助
我得到table1.date與table2.Date列只有通過使用左連接,我需要Table1.Date,Table1.ID應該顯示所有列,Table2.Date應該顯示與Table1.Date相關的列。 – Gopal 2009-10-01 12:09:01
我將你的訪問查詢翻譯成sqlserver,你能告訴它它是否適用於你? – manji 2009-10-01 15:04:48