create table #a (a char(1),b char(1),c char(1),d char(1),e
char(1),f char(1))
go
declare @b varchar(100)
declare @sql nvarchar(500)
set @b='a,b,c,d,e,f'
set @sql='insert into #a values('''+replace(@b,',',''',''')+''')'
--print @sql
exec (@sql)
go
select * from #a
char(1),f char(1))
go
declare @b varchar(100)
declare @sql nvarchar(500)
set @b='a,b,c,d,e,f'
set @sql='insert into #a values('''+replace(@b,',',''',''')+''')'
--print @sql
exec (@sql)
go
select * from #a
解决方案 »
- 求个更新语句啊
- 有问题啦,SQL,查找某字段重复的记录并汇总续,保留一条
- 我有张A表,按条件汇总
- Sql2005维护计划备份数据库时,怎么生成备份文件名称时加上备份的时间啊?
- 请教高手,关于varchar类型的最大长度
- 如何将B表中的所有字段全部更新到A表中,A表字段包含了B表中,但B表中字段的个数是不确定的
- 如果访问变量中的变量sp_executesql
- 只做select时数据类型转换正常,但将此语句查询出来的内容直接放到临时表中就说转换出错
- SQL SERVER2000中文标准版的序列号
- sql server 有沒有邏輯型字段!!!
- 怯怯的问,sqlserver 有没有触发器,有的话,怎么建
- 关于SQL的一个问题
declare @str varchar(30)
set @str='a,b,c,d,e,f'set @str=replace(stuff(@str,4,2,''),',',''',''')
exec('insert into #t values('''+@str+''')')
select * from #t
declare @b varchar(100)
declare @sql nvarchar(500)
set @b='a,b,c,d,e,f'
select @n=len(@b)-len(replace(@b,',',''))
set @i=1
set @sql='create table ##a ('
while @i<=@n+1
begin
set @sql=@sql+'f'+cast(@i as varchar(3))+' varchar(20),'
set @i=@i+1
end
set @sql=left(@sql,len(@sql)-1)+')'
print @sql
exec (@sql)
set @sql='insert into ##a values('''+replace(@b,',',''',''')+''')'
exec (@sql)
select * from ##adrop table ##a
declare @A varchar(100)
declare @sql nvarchar(500)
declare @i int
set @a='a, b ,c ,d,e,f,g'
set @a=''''+ replace(@a,',','''.''')+'''.'''
set @i=1
while charindex('.',@a)<>0
begin
set @a=stuff(@a,charindex('.',@a),1,' '+'F'+cast(@i as varchar(3))+',')
set @i=@i+1
end
set @sql='select '+left(@a,len(@a)-2)+' into ##temp'
exec(@sql)select * from ##temp
drop table ##temp
-------------------------------
F1 F2 F3 F4 F5 F6 F7
---- ---- ---- ---- ---- ---- ----
a b c d e f g(所影响的行数为 1 行)
declare @s varchar(255)
set @s='a,b,c,d,e,f'
set @s= 'insert into Tablename values(''' + replace(@s,',',''',''') + ''')'
execute (@s)
set @s='a,b,c,d,e,f'
set @s= 'insert into Tablename (f1,f2,f3,f4,f5) values(''' + replace(@s,',',''',''') + ''')'
print @s
execute (@s)--QA 里执行上面 SQL 脚本