简单插入多个单一代码

时间:2016-09-22 21:13:16

标签: sql-server-2008

我需要在input_value下面插入表

input_value是:

'select cc_key ,'+ cast(@min_id as varchar(5)) + ',count(cc_key)cnt,''FAIL'' from cc_model_range_2_1 group by cc_key , created_date 
having created_date between '''+cast(@from_dt as varchar(10))+''' and '''+cast(@expt_dt as varchar(10))+''' and cc_key = '''+@cc_key+''' and count(cc_key) > 1'


--ex :
--table creation :

create table ##multiple_code_values_insertion (raw_value nvarchar(max))
select * from ##multiple_code_values_insertion

--try to insert into table :

insert into ##multiple_code_values_insertion values 
('
'select cc_key ,'+ cast(@min_id as varchar(5)) + ',count(cc_key)cnt,''FAIL'' from cc_model_range_2_1 group by cc_key , created_date 
having created_date between '''+cast(@from_dt as varchar(10))+''' and '''+cast(@expt_dt as varchar(10))+''' and cc_key = '''+@cc_key+''' and count(cc_key) > 1'
')

1 个答案:

答案 0 :(得分:0)

Declare @qry varchar(max)
Declare @min_id int 
Declare @from_dt date 
Declare @expt_dt date 
Declare @cc_key varchar(10) 
Set @min_id=1
Set @from_dt='2016/09/23'
Set @expt_dt='2016/10/10'
set @cc_key='KeyVal'

Set @qry='select cc_key ,'+ cast(@min_id as varchar(5)) + ',count(cc_key)cnt,''''FAIL'''' from cc_model_range_2_1 group by cc_key , created_date 
having created_date between '''''+cast(@from_dt as varchar(10))+''''' and '''''+cast(@expt_dt as varchar(10))+''''' and cc_key = '''''+@cc_key+''''' and count(cc_key) > 1'

--table creation :
Drop table ##multiple_code_values_insertion
create table ##multiple_code_values_insertion (raw_value nvarchar(max))

--try to insert into table :
Exec('insert into ##multiple_code_values_insertion(raw_value) values (''' + @qry + ''')')
select * from ##multiple_code_values_insertion