大家好,问一个问题。
tbTableInfo表:
[tableID]
001
002
003
而数据库中有表tb001、tb002……
怎能查到:
[tableID] [count(每个表的总记录数)]
001
002
003

解决方案 »

  1.   

    select 
    right(name,3),
    rowcn
    from sysindexes 
    where name in ('tb001',...)
      

  2.   

    declare @s varchar(8000)
    set @s=''
    select @s=@s+'select name=''' + name + ''',cnt=count(*) from ' + name + ' union '  from (select * from sysobjects where name like 'tb[0-9][0-9][0-9]' and xtype='u')x
    select @s=left(@s,len(@s)-5)
    exec(@s)
      

  3.   

    LouisXIV(夜游神)那个是查索引表?如果那个用户表没有任何索引就不再在于索引表吧?
      

  4.   

    sysindexes表中的行数的确有时不准确!
      

  5.   

    http://msdn2.microsoft.com/zh-cn/library/ms190283.aspx
      

  6.   

    这个问题我在编程时解决了,但我还是想看看纯SQL的做法
      

  7.   

    我不太清楚我写的那是不是纯SQL做法.
      

  8.   

    不好意思,你那个方法出错了:传递到 SUBSTRING 函数的长度参数无效。