我有需要連接表B.是否可以在不使用表變量或臨時表的情況下創建一個聯合表格?
表B中的表A是一個常數,2列
year, flag
----------
2010, A1
2011, A2
2012, A3
2013, A4
2014, A5
是否有可能像做以下(*在SQL Server無效的語法,只是用它來表示我的意思):
SELECT *
FROM A RIGHT JOIN (
2010, 'A1';
2011, 'A2';
2012, 'A3';
2013, 'A4';
2014, 'A5';
)
B ON A.year = B.year
我不想爲B使用表變量或臨時表。是否有其他選擇?
感謝
爲什麼不創建一個真正的表?爲什麼你不想使用表變量或臨時表? – HLGEM
這是因爲這是存儲過程的一部分。我們需要再次將此查詢連接到其他查詢。如果在sql server中存在這樣的東西,那麼我們可以寫1個查詢,讓sql對其進行優化。如果使用表變量,似乎減慢它。 – urlreader
CTE(Comman Table Expression)是你的朋友:) –