当前位置: 代码迷 >> Sql Server >> 快来人呐!有关问题都发好几次了如何没人解答,查询语句中表名为参数的情况
  详细解决方案

快来人呐!有关问题都发好几次了如何没人解答,查询语句中表名为参数的情况

热度:91   发布时间:2016-04-27 12:11:05.0
快来人呐!问题都发好几次了怎么没人解答,查询语句中表名为参数的情况
表Task
  TaskID, TaskSendToGroups TaskSendDateTime, TaskTableName, TaskLinkeTable
  1 1 2012-06-24 07:00 EDM_Dynamic_1 EDM_Links_1  
  2 1,2 2012-06-24 07:00 EDM_Dynamic_2 EDM_Links_2
其中EDM_Dynamic1、EDM_Dynamic2动态创建的表
我要查询出Task表中的数据,并且要统计出 EDM_Dynamic_1,和EDM_Dynamic_2表中的数据

select *,(select count(*) from EDM_Dynamic_1)as Num from Task
select *,(select count(*) from EDM_Dynamic_2)as Num from Task
我在存储过程中,
select *,(select count(*) from Task.TaskTableName)as Num from Task
这样查询报少括号,别的字段好像可以这么干?????

求大神指教


------解决方案--------------------
存储过程中以表名作为参数是一定要动用“动态SQL”语句的。
我举个例子:
set @sql='select @count=count(*) from [email protected]+' where id not in (select id from [email protected]_all+')'
exec sp_executesql @sql,[email protected] int output',@count output
  相关解决方案