Oracle查询语句简单回顾(一)

好久没写博客了,不是工作太忙而是自己太懒惰。。。最近深刻反思了一下自我。决定下面要有规律的生活,工作,学习。
入职新公司快两个月了,在第一个月末的时候误打误撞地填了转正申请,也就提前转正了,公司同事都很热情,部门经理比较‘可爱’,技术大牛。
公司主要做税务稽查软件,涉及到的查询比较多,因此最近抽出时间好好回顾了一下sql的查询语句。在这里简单做一下笔记吧:

这里主要是依托scott用户自带表做练习

  • distinct
    去掉查询结果中重复的部门编号
    select distinct deptno from emp
    去掉deptno,job二者组合的重复
    select distinct deptno,job from emp;
  • where
    查询部门编号等于10的员工信息;
    select * from emp where deptno = 10;
    查询部门编号不等于10的员工信息
    select * from emp where deptno <> 10;
    查询员工姓名等于SCOTT的员工信息
    select * from emp where ename = 'SCOTT'
    查询员工薪水在800到1500之间的员工信息
    select ename,sal from emp where sal between 800 and 1000
    对查询结果中的空值进行处理
    select ename,sal,comm from emp where comm is not null
    查询员工姓名不在范围之内的
    select ename,sal from emp where ename not in ('SMITH','SCOTT');
    查询第二个字母为A的员工信息_表示一个字母
    select ename,sal from emp where ename like '_A%'
  • order by
    desc表示降序asc表示升序
    select * from dept order by deptno desc
    组合降序升序
    `select ename,sal,deptno from emp order by deptno asc,ename desc;
  • sql function
    查询emp表中名字第二个字母不为A且月薪大于800的员工姓名及其年薪并按照月薪降序排列
    select ename,sal * 12 annual_sal from emp
    where ename not like '_A%' and sal > 800
    order by sal desc

    获取所有员工姓名的小写第二个字母为a
    select ename from emp where lower(ename) like '_a%'
    以下和上面的结果相同
    select ename from emp where ename like '_a%' or ename like '_A%'
    从第二个字符截取,一共截取三个字符
    select substr(ename,2,3) from emp;
    字节型转换为字符型A
    select chr(65) from dual
    字符型转换为字节型65
    select ascii('a') from dual
    保留一位小数23.7
    select round(23.652,1) from dual
    四舍五入整数20
    select round(23.652,-1) from dual
    设置数字美元结果格式
    select to_char(sal,'$99_999_999') from emp
    设置数字人民币结果格式
    select to_char(sal,'L9999,999.999') from emp
    设置日期格式,12h制
    select to_char(hiredate,'YYYY-MM-DD HH:MI:SS') from emp;
    设置日期格式,24h制
    select to_char(hiredate,'YYYY-MM-DD HH24:MI:SS') from emp
    设置空值为0
    `select ename,sal*12+nvl(comm,0) from emp
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值