select count(*) from table_a

解决方案 »

  1.   

    select count(*) from table_a
      

  2.   

    --得到表的记录数(下面这种方法只适用于表)sp_spaceused '表名'
      

  3.   

    select count(*) from table_a
      

  4.   

    哦,不好意思。我问的不太明确。
    用count(*)可以是可以,但是如果我是需要同时取出多个字段。
    例如在oracle中:select Rownum,field_a,field_b from table_a
    就是说我既要把这一行的字段值取出来,也要把这一行的行数取出来。
    如果用count(*)的话,就不能做到同时取出来。
      

  5.   

    有表中有自增列FID
    可用select Max(FID) from table_a
      

  6.   

    --你的意思其实是记录号,SQL中没有这个东西--如果你的表中有主键,可以按主键排序来实现
    select 序号=(select count(*) from 表 where 主键<=a.主键),*
    from 表 a
    order by 主键
      

  7.   

    --如果你的表中有没有主键,就要用临时表
    select 序号=identity(int,1,1),*
    into #t from 表 a
    select * from #t
    drop table #t
      

  8.   

    select count(*) field_a,field_b from table_a group by field_a,field_b
      

  9.   

    也就是先以field_a,field_b对表分组,在取每组的数量
    上面少了一个“,”号,改正
    select count(*), field_a,field_b from table_a group by field_a,field_b
      

  10.   

    select 序号=(select count(*) from 表 where 主键<=a.主键),*
    from 表 a
    order by 主键
    这种方法能同时把记录号和字段值同时显示出来吗?
      

  11.   

    zjcxc(邹建) 理解正确
    select 序号=identity(int,1,1),*
    into #t from 表 a
    select * from #t
    drop table #t
      

  12.   

    select count(*), field_a,field_b from table_a group by field_a,field_b
    如果我还想再排序呢?也就是说group by 后面还可以再加order by 吗?
      

  13.   

    select count(*), field_a,field_b from table_a group by field_a,field_b
    order by field_a --....你可以在group by 后加排序
      

  14.   

    当然可以啊,这种方法比较巧妙,是先对主键排序,然后以"小于或等于当前主键"的记录数量为序号.
    select 序号=(select sum(1) from 表 where 主键<=a.主键),*
    from 表 a
    order by 主键