Oracle笔记 form子句讲解,别称的使用,字符串使用,null值处理,
from 子句
显示字段设置
别称
数学运算
null值处理
字符串处理
where 子句
order by 排序
1. from子句之显示字段
练习:显示部门的所有字段
select * from dept;

练习:显示部门的所有字段
select deptNo,dName,loc from dept;
--显示表内给定字段:显示其中某几个(设A表100列显示其中99列)
练习:显示员工编号、姓名、工资、部门
select empNo,eName,sal,deptNo from emp;
1. from子句 别称
应用场景:
做数学运算时sal*12 显示的列标题sal*12 ,此时显示yearSal就用别称
做null值处理时,nvl(comm,0) 显示的列标题 nvl(comm,0) 此时显示cm就用别称
做多表联合时列名可能重复,员工和部门两表都有deptNo列,此时用别称区分
。。。 。。。
语法规则:
select 列名1 别称1 , 列名2 别称2, ... ... , 列名N 别称N from 表名;
练习:查询显示部门要求字段标题是dxxxx的形式,以D开头
select deptNo dNo ,dname,loc dloc from dept;

1. 数学运算
应用场景:
求年薪sal*12、求月实发工资 sal+comm 、求年度提成 comm*12 ...
语法:
select 列名 运算符 列名/值 from 表名;
练习:求每个员工的年薪情况
select eName,sal*12 from emp;

练习:显示员工年薪(进阶版)
select eName,sal*12 yearMoney from emp;

1. null值处理
发现问题: select eName,sal,comm,sal+comm money from emp;
执行结果如下图

处理问题:当奖金是null时,我们可以将null替换成0
语法:nvl( 列名, 新值)
解题答案:谁是空谁及时将null替换掉
select eName,sal,nvl(comm,0) cm,sal+nvl(comm,0) money from emp;

1. from子句之字符串
(1) 应用场景:显示时以XX开头、XX结尾、XX做连接符
(2) 解决办法:’字符串1’||’字符串2’ 结果 ‘字符串1字符串2’
(3) 练习:
① 显示Mr.姓名 员工的姓名前加Mr.前缀
select ‘Mr.’||eName , sal from emp;

① 显示特殊字符’单引号,例如显示abc成 ‘abc’
1) 方法1:select ‘’’abc’’’ from dual;
2) 方法2: select ‘’’’ || ‘abc’ || ‘’’’ from dual;
解释: ‘ ‘’ ’ 表示被输出的那个’
‘’’’ || ‘abc’ || ‘’’’ --单引号内的一对单引号表示原样输出中的1个单引号
‘ abc ’