数据库SQL函数的基本运用(后续组函数or聚合函数)
来源:互联网 发布:自助抢票软件 编辑:程序博客网 时间:2024/05/18 01:37
--函数
/*
1.字符函数:substr(ename,起始位置,长度):截取;
instr(ename,'元素'):indexOf;
length(ename):长度;
conact(ename,'内容'):
lower(ename):转换为小写
upper(ename):转换为大写
lpad(ename,补充到多少位,'填充内容'):在左边补充
rpad(ename,补充到多少位,'填充内容'):在右边补充
2.日期函数:months_between(起始时间,截止时间):计算起始到截止的月数
add_months(时间,num):在时间中加num个月
last_day( ):当月的最后一天
next_day(start,num):从start开始数下一个星期num-1
3.转换函数:nvl:判空
to_char( ):date/number转换为varchar
to_date( ):varchar转换为date;一般用于新增
to_numbe( ):varchar转换为number
round(sal,num):四舍五入,保留num位小数
trunt():截取
*/
--select substr (ename,1(位置),1(长度)) from tablename
select substr (ename,1,1) from emp
--select instr (ename,'元素') from tablename
select instr (ename,'s') from emp
select ename,instr (ename,'s') from emp
--select length (eanme) from emp
select length (ename) from emp
select * from emp where substr (ename,length(ename),1) = 's'
--
select concat(ename,'每个月') from emp
--
select lower(ename) from emp
--查询名字仅首字母大写,其余小写的员工信息
select * from emp where substr(ename,1,1)=upper(substr(ename,1,1))
and substr(ename,2,length(ename)-1)=lower(substr(ename,2,length(ename)-1))
select lpad(ename,10,'*') from emp
select rpad(ename,10,'*')from emp
select rpad(lpad(ename,length(ename)+4,'*'),length(ename)+8,'*') from emp
--日期函数
select months_between(sysdate,hiredate) from emp
--查询工龄在34年以上的员工信息
select * from emp where months_between(sysdate,hiredate)/12 >= 34
--工龄34年以上的工资上涨100
update emp set sal = sal + 100 where months_between(sysdate,hiredate)/12 >= 34
--转换函数
select hiredate,to_char(hiredate,'YYYY') from emp
--查询工龄在34年以上的员工信息
select * from emp where to_char(sysdate,'YYYY') - to_char(hiredate,'YYYY') >= 34
--组函数(聚合函数)
/*
1.min():求最小值
2.max():求最大值
3.sum():求和
4.count():计数
5.avg():平均值
group by:分组
where --> group by --> having --> order by:执行顺序
*/
--统计记录数
select count(*) from emp
--分组group by
--每个部门的最高工资
select max(sal) from emp group by deptno
--按谁分组就只能显示谁
select job,max(sal) from emp group by job
--查询最高工资的人
select * from emp where sal = (select max(sal) from emp)
--查询平均工资高于2000的部门信息
select deptno from emp group by deptno
having avg(sal) > 2000
--查询30号部门内部每个工作平均工资
--高于1000的工作的信息的同时按照平均工资的降序排序
select job,avg(sal) from emp
where deptno = 30
group by job
having avg(sal) > 1000
order by avg(sal) desc
- 数据库SQL函数的基本运用(后续组函数or聚合函数)
- SQL数据库聚合函数
- SQL语言基本操作(聚合函数)
- sql的聚合函数
- sql的聚合函数
- 聚合函数查询的SQL
- SQL学习(2)——MySQL数据库常用的函数--聚合函数
- 字符串+聚合函数 (SQL)
- mysql 数据库笔记-基本查询(分组、聚合函数)
- SQL server2005基本sql语句 常用的内置函数、聚合函数的使用详解
- 组函数(聚合函数),分组函数
- sql聚合函数
- T-SQL聚合函数
- SQL聚合函数
- 聚合函数 (Entity SQL)
- sql 常用聚合函数
- sql聚合函数
- sql 常用聚合函数
- Javascript RegExp replace()
- linux下的openoffice安装和服务自启动
- 偷懒代码块之显示status bar notifications
- 黑马程序员——OC语言------类的声明实现、面向对象
- Android Volley完全解析(三),定制自己的Request
- 数据库SQL函数的基本运用(后续组函数or聚合函数)
- eclipse 安装后,无法打开 An error has occurred. See the log file /.eclipse/org.eclips
- VOIP NAT穿越之SIP信令穿越
- 做ZigBee实验时SmartRF Flash Programmer软件的界面打不开
- 字符转图片并且二值化
- 堆排序
- The Triangle
- C# 传值给js
- 给ViewPager添加切换动画