东北牛,摔跤狂热,河道护坡
本文实例讲述了python实现oracle查询分组的方法。分享给大家供大家参考,具体如下:
1.分组的概念:
关键字:group by子句
结论:在select列表中如果出现了聚合函数,不是聚合函数的列,必须都要定义到group by子句的后面
需求:
查询公司各个部门的平均工资?
select department_id,avg(salary) from employees group by department_id;
需求提升:
查询公司各个部门不同工种的平均工资?
select department_id,job_id,avg(salary) from employees group by department_id,job_id;
2.having子句:
作用:用来过滤包含聚合函数的相关信息(数据)
位置:
可以再group by前也可以再 group by后面(比较随意)
需求:
查询40、60、80号部门中平均工资大于6000的部门信息?
以下代码实现有问题的:报错了!!
报错原因:如果需要对于聚合函数进行过滤不能使用where子句,
需要使用having子句来实现...
select department_id,avg(salary) from employees where avg(salary) > 6000 and department_id in(40,60,80) group by department_id;
代码修改如下:
select department_id,avg(salary) from employees where department_id in(40,60,80) having avg(salary) > 6000 group by department_id order by department_id desc;
附:python连接与查询oracle数据库示例:
import cx_oracle conn = cx_oracle.connect('scott/tiger@localhost:1521/orcl') cursor = conn.cursor() cursor.execute("select ename from emp") row = cursor.fetchone() print row[0], cursor.close() conn.close()
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Python爬虫:Request Payload和Form Data的简单区别说明
浅谈Python中threading join和setDaemon用法及区别说明
Python3-异步进程回调函数(callback())介绍
python继承threading.Thread实现有返回值的子类实例
Python中使用threading.Event协调线程的运行详解
网友评论