表结构id    number    date
1     ss23      09-01-01
...   ...       ...现在想达到这样的效果,经过查询后,能得到四列值,最后一列是number在整个表中的数量
就是在得到的每一条记录的最后增加number列中所在行的数值在整个表中的数量,比如,以上面为例,如果ss23这个number在整个表中为97个,则经过查询后得到的结果类似于1     ss23      09-01-01    97
2     ss24      09-02-02    13最后一列是第二列在整个表中的数量
请问这个SQL语句如果写服务器是MS SQL SERVER

解决方案 »

  1.   

    本帖最后由 fcuandy 于 2009-10-23 16:34:21 编辑
      

  2.   

    那你日期是怎么算?SELECT *
     ,
    (SELEC COUNT(NUMBER) FROM TB WHERE NUMBER=T.NUMBER GROUP BY NUMBER) AS NUMFROM TB T
      

  3.   

    SELECT *
     ,
    (SELECT COUNT(NUMBER) FROM TB WHERE NUMBER=T.NUMBER GROUP BY NUMBER) AS NUMFROM TB T
      

  4.   

    select a.*,b.cnt
    from tb a
    left join
    (select number,count(1) as cnt from tb group by number) b
    on a.number=b.number