Oracle-入门

函数

  1. NVL
NVL(expre1,expre2)

当expre1为 null 时,返回expre2,不为null时返回expre1。

  1. NVL2
NVL2(expre1,expre2,expre3)

当expre1不为 null 时,返回expre2,为null时返回expre3。

  1. NULLIF
NULLIF(expre1,expre2)

expre1和expre2相等时返回null,不相等返回expre1。

  1. CASE WHEN ... THEN ... ELSE ... END (别名)
CASE
  WHEN ... THEN ...
  WHEN ... THEN ...
  ELSE ...
END (别名)

条件判断

  1. DECODE
DECODE(条件,值1,返回值1,值2,返回值2,…值n,返回值n,缺省值) 别名

条件判断,如果值和条件相等,返回对应的返回值,类似Java的switch

字符串

  1. LOWER、UPPER、INITCAP
LOWER(str)
UPPER(str)
INITCAP(str)

转为全小写
转为全大写
转为首字母大写,其他小写

  1. CONCAT
CONCAT(str1,str2)

将两个字符串拼接起来,两个以上字符串拼接可以使用 ||

  1. SUBSTR
SUBSTR(str,index,len)

从index(Oracle中下标从1开始)开始,截取字符串str,截取len个字符

  1. LENGTH
LENGTH(str)

返回字符串str长度

  1. INSTR
INSTR(str,substr)

返回substr在字符串str中第一次出现的位置,str中没有substr返回0

  1. TRIM
TRIM(str)
TRIM(substr FROM str)

去除str首尾空格
去除str首尾substr

  1. REPLACE
REPLACE(str,search_str,replace_str)

将字符串str中的search_str用replace_str替换

数字

  1. ROUND
ROUND(435.45)
ROUND(435.45,1)
ROUND(435.45,-1)

435
435.5
440
四舍五入

  1. TRUNC
TRUNC(435.45)
TRUNC(435.45,1)
TRUNC(435.45,-1)

435
435
430
截断,不管后面的大小

  1. MOD
MOD(num1,num2)

num1%num2 取余数

日期

  1. SYSDATE
SYSDATE

返回当前日期和时间,加减数字仍为日期,可相减

  1. MONTHS_BETWEEN
MONTHS_BETWEEN(DATE date1,DATE date2)

返回两个日期相差的月数

  1. ADD_MONTHS
ADD_MONTHS(DATE date1,NUMBER num)

给指定日期date1加num个月

  1. NEXT_DAY
NEXT_DAY(DATE date1,weekday)

指定日期date1下一个星期(weekday)对应的日期

  1. LAST_DAY
LAST_DAY(DATE date1)

date1本月最后一天

  1. ROUND、TRUNC
ROUND(DATE date1,'YEAR')
TRUNC(DATE date1,'MONTH')

日期按年的维度四舍五入
日期按月的维度截取

  1. TO_DATE、TO_CHAR、TO_NUMBER
TO_CHAR(SYSDATE,'yyyy-MM-dd')

日期,字符串、数字转换函数

连接查询

  1. 等值连接
SELECT A.a1,B.b1
FROM A,B
WHERE A.id = B.aId

连接查询的条件相等

  1. 非等值连接
SELECT A.a1,B.b1
FROM A,B
WHERE A.a1 > B.b1

连接查询的条件不相等

  1. FULL JOIN 全连接
    效果类似 UNION ALL子句

组函数和分组查询

  1. SUM、COUNT、AVG统计的是非空值

子查询

  1. ANY和ALL
    ANY表示任一,即只要有一个满足即可
    ALL表示所有

DDL

  1. USER_TABLES:用户数据表

  2. Oracle表名和列名命名规则
    1)必须以字母开头;
    2)长度在1-30个字符;
    3)可以包含字母、数字、_、$、#

  3. 数据类型
    VARCHAR2(size) 可变长度字符串;
    CHAR 固定长度字符串;
    CLOB 长字符串,最大可达4G;
    NUMBER(z,x) 数值;
    DATE 日期;
    BLOB 二进制数据;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。