博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

关于数据库查询的一个问题

Posted on 2008-03-12 13:04  阳光-浪漫  阅读(173)  评论(0编辑  收藏  举报

 今天碰到了一个数据库关联查询的问题,问题上是这样的 ,客户需要将每个部门下所有的员工学习课程数按降序排列,本来应该是一个很简单的问题,但是问题出现了,就是部门是分多级别的,而且学习课程统计里关联的只有员工的ID,于是我先把对应的几个大部门从部门表里抽出来,然后学习课程里的员工在部门表里循环查询,结果是出来了,可是排序却排不了,因为开始是按部门表排序的,而课程统计是按照统计表里查询出来的,于是想到了用一句SQL关联查询,具体语句如下:

sql="select  top "&newsnum&" dbo.getname('sm_parent_dept_id',dbo.getname('sm_employee_dept_id',employee_id))dept_id ,class_finish_num=sum(class_finish_num) from elc_my_analysis where dbo.getname('sm_parent_dept_id',dbo.getname('sm_employee_dept_id',employee_id)) in (142,143,144,145,146,147,148,149,150,151,152,153,154,155) group by dbo.getname('sm_parent_dept_id',dbo.getname('sm_employee_dept_id',employee_id)) order by class_finish_num desc"

终于可以按课程总数的降序排列了