你的user 个数信息从那里来?

解决方案 »

  1.   

    倒是可以,但是Sql的效率可能不高。
    select (select count(*) from tablename b where b.delptname  = a.delptname and b.userid <=a.userid),
    userid,usename,delptname
    from tablename a
      

  2.   

    谢谢大家,不好意思,我再贴好点。[怎么搞的,贴出来就没有格式了:(:(:( ]  
    有一个表: 
    userid(pk) UserName  DeptName 
    -----------------------------------------
    1           name1    总经办 
    2           小明     生产部 
    4           小华     生产部 
    7           slilui   总经办 
    ------------------------------------
    现在要用SQL 语句查询得出下表:
    IndexID   UserID(pk)   UserName   DelptName(按这个分组) 
    -----------------------------------------------
    1            1          name1      总经办
    2            7          slilui     总经办 
    1            2          小明       生产部 
    2            4          小华       生产部 
    ---------------------------------------------
    (说明:就是在分组的基础上加上一个字段Indexid是序号,可以看到出该部门有多少个user) 
    用什么语句,怎么才能加上indexid这样的数据? 
      

  3.   

    同意楼上的意见,加一点小小的改进:
    select (select count(*) from test1 b where b.delptname  = a.delptname and b.userid <=a.userid) as indexid,
    userid,username,delptname
    from table1 a
    order by deptName,indexid
      

  4.   

    UserID是系统自动生成的,因为可能中间的记录给删除了,这个UserID就不连续了。
      

  5.   

    同意楼上的意见,加一点小小的改进:
    select (select count(*) from test1 b where b.delptname  = a.delptname and b.userid <=a.userid) as indexid,
    userid,username,delptname
    from table1 a
    order by depltName,indexid
      

  6.   

    谢谢大家,我给大家加分,(每人20以上)
    我怎么就这样笨啊:(lyxinfo()、forgot2000(忘记2000年) 的方法成功了。还有个小小的请求,
    现在的SQL Server中,大家写的是
    (1)、select * from table1 a,table2 b where a.pid=b.pid
    还是写成
    (2)、join的形式?
    我发现当用select的结果当作一个表又加入到select中时会出错。
    而Join的就不会错。
      

  7.   

    在oracle下,有rownum这样的伪列,如果没有这样伪列的SQL环境,可采用下面的方法(假设你的表名为“test”)(SQL Server2000下调试通过):select (select count(*) from test t1 where t1.userid<=test.userid and t1.deptname=test.deptname) as indexid,userid,username,deptname 
      from test
    order by deptname,indexid/********************************************
    test表的数据:
    userid     username   deptname   
    ---------- ---------- ---------- 
    1          张三         业务部    
    2          李司         生产部    
    3          王无         业务部    
    4          找六         生产部    
    5          流气         业务部    
    /*********************************************
    上边SQL语句的结果集,不知是否是你所需要的:
    indexid     userid     username   deptname   
    ----------- ---------- ---------- ---------- 
    1           2          李司         生产部    
    2           4          找六         生产部    
    1           1          张三         业务部    
    2           3          王无         业务部    
    3           5          流气         业务部    
      

  8.   

    god,千万别给俺分,我网络不通,写好没发,通了后发上去一看,几个答案了!