一、查询语句
1. select
select 用于从数据库查询数据。语法如下
select field1,field2,....
from tablename
[where condition]
案例如下

通配符 *,表示查询所有字段。但如果要查询特定字段的话,不要使用*,影响查询效率。

2. distinct 去重
作用:把重复性的记录去掉,只保留一条。修饰多字段时,多个字段的值都不一样才保留。

3. where 子句
where 表示查询的条件
[1] =,!= ,<>,<,>,<=,>= 关系运算符
<> 表示不等于

any/some/all (list)
any/some(list) 满足list列表中的任意一个条件。
all(list)满足list 列表中的所有条件

[2]. null
null 在sql 中表示的是不确定 => 可以认为没有值

[3] between x and y
表示一个值位于[x,y]区间,x/y 一般都是数字。

[4] in/not in list
表示字段值是否在list列表中

[5] 模糊查询
like 关键字用于模糊查询,其中
%:表示任意字符出现多处(含0次);
_:表示任意字符出现一次;
escape('x')表示指定转义字符为x,一般指定为。

4. 复杂查询(and/or)
where 后面的条件可以跟多个通过 and 或者 or 连接。
and:且、并且;
or:或、或者。

where 中 and、or的执行效率问题
and表示且,条件越多,检索的数据量越少;
or表示或,条件越多,检索的数据量越多;
where条件的执行顺序从后向前。
所以在执行sql 语句时,要把检索结果较少的条件放在后面;
and 和 or 同时存在时,and先执行。
5. 计算字段
我们经常需要把数据库中检索出来的信息进行再加工,允许的操作+、-、*、/。通过四个运算得到新的字段(计算字段)。
计算字段在数据表中不存在

注意:很多记录中的comm 是 null ,表示不确定的值,经过四则运算后的值也不确定。
当遇到字段null 时,可以通过nvl 函数把null转化成便于运算的类型
