如果有这一样一张表:人员情况表
字段:
姓名 姓别 学历 是否在职
要求统计出:高中(含)以下人员总数 高中以上本科(含)以下人员总数 本科以上人员总数 以及在职人员总数这怎么样查询呀?用一个SQL语句可以吗?查询结果怎么样创建到临时表并增加到临时表里面,又怎么样显示呢?
字段:
姓名 姓别 学历 是否在职
要求统计出:高中(含)以下人员总数 高中以上本科(含)以下人员总数 本科以上人员总数 以及在职人员总数这怎么样查询呀?用一个SQL语句可以吗?查询结果怎么样创建到临时表并增加到临时表里面,又怎么样显示呢?
解决方案 »
- 在Delphi中,将图片保存到数据库以后,如何按需修改(即更换)图片信息
- delphi 参数里的负1到底代表什么意思呀
- 为什么ActiveXFrom向应用程序发送Socket信息时,系统老是提示必须重新启动电脑?
- 刚学delphi,菜鸟问题
- 用shellExecute打开一个exe文件,为什么第二次就打不开了
- 简单的问题,脑子死锁了,帮帮我!
- 我要在窗体上画大量的线段,请问用什么控件好!
- 如何将声音,图片合成avi 或 mpeg (若有代码,可否考虑一下能否转卖)
- delphi下怎么使用控件数组?
- 请问各位:DELPHI5在线帮助属性窗口中的三角和方块符号代表什么意思?
- 50分求助,delphi中实现SQL更新语句!
- 各位大虾救命啊!!!关于ADOdataset CatchUpdate的问题!
(SELECT count(*) FROM tablename WHERE 学历='高中' OR 学历='高中以下') AS '高中以下人数',
(SELECT count(*) FROM tablename WHERE 学历='高中以上' OR 学历='本科以下') AS '高中以上本科以下人数',
(SELECT count(*) FROM tablename WHERE 学历='本科' OR 学历='本科以上') AS '本科以上人数',
(SELECT count(*) FROM tablename WHERE 是否在职='是') AS '在职人数'
具体判断学历范围的时候还要根据实际表结构而定
union
select count(*) 人数 from table where 高中<条件<=本科
union
select count(*) 人数 from table where 条件>本科
Select count(case when 学历<高中 then 1 else 0 end )as count1,count(case when 学历>高中 then 1 else 0 end)as count2 from 人员情况表
试试
不过我觉得luke5678(奇异)大哥的方法最好,虽然比较麻烦,但是思路清晰