Oracle SQL 查询
SQL语句中的数学表达式:对于数值和日期型字段,可以进行 “加减乘除”
SELECT last_name, salary, salary + 300 FROM employees;
给列起别名
或者是引号
字符串连接 ||
DISTINCT去除重复
一般放到select后面
Where条件控制关键字
between…and …
IN(set) 在一个集合中
LIKE 匹配字符串,使用通配符配合使用 一般用于模糊搜索
_代表一个字符%代表一个或多个
IS NULL 而不使用 =NULL
Order By排序
默认为升序,降序为desc
函数
单行函数
大小写转换函数
LOWER(’ ‘)
UPPER(’ ‘)
INITCAP(’ ')驼峰
字符串操作
- CONCAT(str1,str2) 拼接
- SUBSTR(str,start,size) 截取
- LENGTH(str) 长度
- INSTR(str,char) 字符下标
- LPAD(num,size,char) 左边扩充
- RPAD(num,size,char) 右边补齐
- TRIM(‘H’ FROM ‘HelloWorld’) elloWorld
- TRIM(str) 去掉前面和后面的空格,中间的不变
数字操作
1.ROUND(78.23642,2) 78.24
2.TRUNC(78.23687,2) 78.23
3.MOD(1600,300) 100
隐式转换
其它函数
NVL (…,…) 若第一个为空,返回第二个
NVL2(…,…,…) 第一个为空返回第三个,第三个为空返回第二个
NULLIF(…,…) 两个相等返回空
COALESCE(…,…,…,…,…)直到找到空为止
条件函数
CASE …
WHEN … THEN …
…
日期操作
MONTHS_BETWEEN (‘01-SEP-95’,‘11-JAN-94’) 结果为 19.6774194
ADD_MONTHS( , )
ADD_DAY( , )
有意思的是,日期也可以被round或者trunc修饰
ROUND(‘25-JUL-95’,‘MONTH’) 1-Aug-95
ROUND(‘25-JUL-95’ ,‘YEAR’) 1-Jan-96
TRUNC(‘25-JUL-95’ ,‘MONTH’) 1-Jul-95
TRUNC(‘25-JUL-95’,‘YEAR’) 1-Jan-95
同时,日期之间也可以做加减运算
比如日期相加或者相减的操作整数部分代表天,除7或者365能算出week或者year的数量。
好的,我们下一节继续学习单行函数~