2013-10-22 26 views
0

需要存儲某聯盟的結果集所有連接查詢到一個臨時表我怎麼能解決這個過濾查詢的結果集到臨時表

DECLARE @no_of_days INT = 2 
DECLARE @xxx DATETIME = '2009-11-04' 

SELECT * 
FROM source_price_curve 
WHERE maturity_date >= DATEADD(DAY, -1 * @no_of_days, @xxx) AND maturity_date < @xxx 
UNION ALL 
SELECT * 
FROM source_price_curve 
WHERE maturity_date <= DATEADD(DAY, 1 * @no_of_days, @xxx) AND maturity_date > @xxx 

回答

0

臨時表插入必須在第一次選擇。

這是SqlFiddle的演示。

DECLARE @no_of_days INT = 2 
DECLARE @xxx DATETIME = '2009-11-04' 

SELECT * into #Temp 
FROM source_price_curve 
WHERE maturity_date >= DATEADD(DAY, -1 * @no_of_days, @xxx) AND maturity_date < @xxx 
UNION ALL 
SELECT * 
FROM source_price_curve 
WHERE maturity_date <= DATEADD(DAY, 1 * @no_of_days, @xxx) AND maturity_date > @xxx 
0

請嘗試以下方法:

Insert Into #Temp 
SELECT * 
FROM source_price_curve 
WHERE maturity_date >= DATEADD(DAY, -1 * @no_of_days, @xxx) AND maturity_date < @xxx 
UNION ALL 
SELECT * 
FROM source_price_curve 
WHERE maturity_date <= DATEADD(DAY, 1 * @no_of_days, @xxx) AND maturity_date > @xxx 
相關問題