2013-12-18 139 views
0

我試圖讓這個查詢工作插入到與另一列同一串一列多行

INSERT INTO [ImportedDateRange] ([DataSet],[DateRange]) 
'webshop', (select DISTINCT cast([OrderCreatedDate] as DATE) from webshop) 

我基本上希望它看起來是這樣的:

DataSet  DateRange 
webshop  01/10/2013 
webshop  02/10/2013 
webshop  03/10/2013 
webshop  03/10/2013 

哪裏每次輸入webshop,但每個日期範圍都複製到新行中。

還檢查與數據集的網上商店的日期範圍的記錄已經存在

感謝您的幫助和建議

+1

確保你把你所有的要求,在這個問題......沒有評論答案!所以大家可以看看:) –

+0

對不起,以後會做,謝謝你的幫助 – neeko

回答

2

從網上商店表寫插入在[ImportedDateRange表數據集的網上商店特有的日期範圍爲記錄:

INSERT INTO [ImportedDateRange] 
([DataSet],[DateRange]) 
select DISTINCT 'webshop', cast(T2.[OrderCreatedDate] as DATE) from webshop T2 
WHERE NOT EXISTS (select 1 from [ImportedDateRange] T1 where T1.[DateRange] = T2.[OrderCreatedDate]) 
+0

這是什麼,它爲什麼如此複雜? –

+2

此查詢將僅在webshop表的ImportedDateRange表中插入不在ImportedDateRange表中的唯一記錄。這是用戶想要的... – Deepshikha

+0

@AntoRajaPrakash:OP在評論中沒有提到這個要求! –

2
INSERT INTO [ImportedDateRange] ([DataSet],[DateRange]) 
SELECT DISTINCT 'webshop', CAST([OrderCreatedDate] as DATE) 
FROM webshop 
+0

謝謝!它在'網上商店' – neeko

+1

之前把明顯的不同。現在試試吧 –

+0

另一個快速問題,你知道如何得到它與DataSet webshop的DateRange記錄檢查已經存在嗎? – neeko

1
INSERT INTO [ImportedDateRange] 
([DataSet],[DateRange]) 
select DISTINCT 'webshop', cast([OrderCreatedDate] as DATE) from webshop 
1

「網店」應該是SELECT中,嘗試運行選擇上它是自己的,因爲輸出將會被插入ImportedDateRange表中。

INSERT INTO [ImportedDateRange] 
([DataSet], [DateRange]) 
select DISTINCT 'webshop', cast([OrderCreatedDate] as DATE) from webshop; 
相關問題