1 一、简单查询 2 1、查询数据表的所有列: 3 select * from 表名; 4 select 列名,列名,...from 表名; 5 2、起别名 6 select 列名[AS 别名],列名,列名,... 7 from 表名; 8 --正常 9 select ename AS 员工姓名, sal salary 10 from emp; 11 12 -- 别名是关键字, 别名需要用双引号引起来 13 select ename "select", sal "from" 14 from emp; 15 16 ---别名的中间存在空格,别名也需要用双引号引起来 17 select ename "employee name", sal 18 from emp; 19 20 3、distinct:去重 21 ---查询emp表中的不同职务 22 select distinct job 23 from emp; 24 25 ---??? 26 ---查询emp表中每个部门的不同职务 27 select distinct deptno,job 28 from emp; 29 30 ---查询emp表中每个部门的不同职务 31 select distinct deptno,job 32 from emp; 33 34 ---错误 35 select distinct deptno, distinct job 36 from emp; 37 38 ---注意 39 select后面,多列去重,在所有列的前面写一个distinct即可 40 41 4、|| 连接输出 42 ---将每个员工的信息输出为如下格式: 43 姓名:xxxx:,工资为:xxx。 44 字符串和日期用单引号引起来的。 45 46 select '姓名为:' || ename || ',工资为:' || sal ||'。' 员工信息 47 from emp; 48 49 5、四则运算: 50 ---查询员工的姓名和年薪 51 select ename,sal*12 年薪 52 from emp; 53 54 55 select ename,(sal+comm)*12 年薪 56 from emp; 57 ---当与null 参与运算或是比较时,结果一定为null 58 59 nvl(agr1,arg2):判断arg1是否为null,如果不为null,结果为arg1,如果为null,结果为0 60 select ename,(sal+nvl(comm,0))*12 年薪 61 from emp; 62 63 64 1.员工转正后,月薪上调20%,请查询出所有员工转正后的月薪。 65 66 2.员工试用期6个月,转正后月薪上调20%, 67 请查询出所有员工工作第一年的年薪所得(不考虑奖金部分,年薪的试用期6个月的月薪+转正后6个月的月薪) 68 69 ---1.员工转正后,月薪上调20%,请查询出所有员工转正后的月薪。 70 select * from emp; 71 select empno,sal+sal*0.2 转正后工资 72 from emp; 73 74 ---2.员工试用期6个月,转正后月薪上调20%, 75 ---请查询出所有员工工作第一年的年薪所得(不考虑奖金部分,年薪的试用期6个月的月薪+转正后6个月的月薪) 76 select empno ,(sal*6)+(sal+sal*0.2)*6 年薪 77 from emp; 78 79 ---1.员工试用期6个月,转正后月薪上调20%, 80 ---请查询出所有员工工作第一年的所有收入(需考虑奖金部分), 81 ---要求显示列标题为员工姓名,工资收入,奖金收入,总收入。 82 select * from emp; 83 select ename 员工姓名 ,(sal*6)+(sal+sal*0.2)*6 工资收入, nvl(comm,0)*12 奖金收入, 84 ((sal*6)+(sal+sal*0.2)*6)+(nvl(comm,0)*12) 总收入 85 from emp; 86 87 ---1.员工试用期6个月,转正后月薪上调20%, 88 ---请查询出所有员工工作第一年的所有收入(需考虑奖金部分), 89 ---要求显示格式为:XXX的第一年总收入为XXX。 90 select ename||'第一年总收入为'||(((sal*6)+(sal+sal*0.2)*6)+(nvl(comm,0)*12))||'。' 91 from emp; 92 ---注意括号
逆袭之旅DAY13.东软实训.Oracle.简单的查询语句.
猜你喜欢
转载自www.cnblogs.com/twinkle-star/p/9282437.html
今日推荐
周排行