数据库表机构一样 但是 数据库表和数据库 太多怎么办 如何把它们批量组合在一起 算起来 有120多个表呢 10个数据库 总不能一个个手动去输入吧
求大神 指点江山 如何 批量吧  所有数据库里的 数据库表 里的数据  混合查询起来的 SQL指令 数据库结构是一样的 当然 数据库 必须是用户数据库表
小弟在此感激不尽 谢谢大神指点江山

解决方案 »

  1.   

    /*库:db1 ,db2
    表:db1中tb1(id int) 数据是1,2,3 ; db2中tb2(id int) 数据是4,5,6*/CREATE TABLE Struc(ID INT IDENTITY(1,1),DBName VARCHAR(50),TBName VARCHAR(50))
    INSERT struc SELECT 'db1','tb1'
    INSERT struc SELECT 'db2','tb2'DECLARE @sql VARCHAR(8000),@Const1 VARCHAR(100),@Const2 VARCHAR(100)SELECT @Const1='SELECT * FROM ',@Const2=' UNION ALL SELECT * FROM ',@sql=@Const1SELECT @sql=@sql+dbname+'..'+Tbname+@Const2
    FROM Struc sSELECT @sql=CASE WHEN @sql<>@Const1 THEN LEFT(@sql,LEN(@sql)-LEN(@Const2)) ELSE '' END
    IF @sql<>'' 
    EXEC(@sql)
      

  2.   

    都说得这么清楚了你还不懂啊
    上面都有说明,把库名称和表名称分别存在表Struc的DBName和TBName中,然后用下面的代码就可以实现查询