有个问题请教高手们:
比如 表a中某个字段放的是表名称(a1,a2,a3,a4....),(a1,a2,a3,a4....)这几个表是实际存在的,现在的问题是想查询(a1,a2,a3,a4....)这里面的数据,请高手帮我解决一下,谢谢
比如 表a中某个字段放的是表名称(a1,a2,a3,a4....),(a1,a2,a3,a4....)这几个表是实际存在的,现在的问题是想查询(a1,a2,a3,a4....)这里面的数据,请高手帮我解决一下,谢谢
解决方案 »
- 请教各位大虾在SQL SERVER中如何让触发器判断是由本数据库操作而触发的
- 导入表后数据的丢失问题???
- 请大家帮助解决我的很困惑的问题--关于联机帮助的一句话,搭救2个已经晕菜的可怜人,谢谢:-)
- SQL语句 数据统计
- 1,如何取得某一条记录的行号,2,SQL中是否有字符插入函数?
- 为什么我用select查询日期时要出现错误 在线等
- 如何将2560000转换成2,560,000 100分!请各位大侠帮帮忙!急急!
- 数据库越来越大,各位前辈是用什么方法将历史纪录切分到另外一个库的?欢迎讨论,来着有分!
- 请问sql语句中是否有一次删除多个指定id记录的便利语句?
- 不说设计是否合理,只想找个解决办法,我请大家来坐坐
- 想要远程连接数据库,但只有在服务器自动获取ip时可以连上,该怎么解决
- 这个SQL该怎么写运行速度会比较快
declare @Tb varchar(50),@sqltext
select @Tb = isnull(@Tb,'')+' select * from '+ 某字段 from 表a
exec(@Tb)
SUBSTRING(A.col, B.id, CHARINDEX(',', A.col + ',', B.id) - B.id)
into #a
FROM a A, #b B
WHERE SUBSTRING(',' + A.col, B.id, 1) = ','
/*
id col
1 a1
2 a2
3 a3
4 a4
*/
然后动态拼接
declare @sql varchar(1000)
set @sql=''
select @tb=col from #a
set @sql='select * from'+ @tb
exec(@sql)
declare sqltext varchar(8000)
select @sqltext= isnull(@sqltext,'')+' select * from '+ 某字段 from 表a--取出字段的值,拼凑出SQL语句
print ) @sqltext --查看拼凑的语句
exec(@Tb)--使用exec执行该拼凑的语句
declare @tableName varchar(10)
declare @sqlStr varchar(1000)
while exists (select 1 from 表a)
begin
select @tableName=列 from 表a
set @sqlStr='select * from'+ @tableName
exec(@sql)
end