[英]How can insert multiple records into temporary table from two date?
我的存儲過程中有這個查詢。 查詢是:
INSERT INTO #TeporaryTableAcquaMensile
SELECT 'WATER',CONVERT(varchar(12),GETDATE(),105),VALUE_START
FROM AA_V_MV_Obiettivi_x_modello_virtuale
WHERE CONVERT(varchar(12),GETDATE(),105) between DatEStart and DateEnd
and idtipoparametro=2 AND IDModelloVirtuale=15
此查詢有效,但我想為從 DateStart 到 DateEnd 的每一天插入一些值。
因此,例如,如果我有 DateStart=2015-12-01 和 DateEnd = 2015-12-31,我想插入到我的臨時表中 31 條記錄。 有可能做到這一點嗎?
嘗試這個
您需要創建一個包含 1 到 31 數據的數字表並使用
create table numbers(number int)
insert into numbers(number)
select top 31 row_number() over (order by (select 1)) from master..spt_values
INSERT INTO #TeporaryTableAcquaMensile
SELECT 'WATER',CONVERT(varchar(12),GETDATE(),105),VALUE_START
FROM AA_V_MV_Obiettivi_x_modello_virtuale, numbers
WHERE CONVERT(varchar(12),GETDATE(),105) between DatEStart and DateEnd
and idtipoparametro=2 AND IDModelloVirtuale=15
and number between 1 and datediff(day,dateend,dateStart)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.