Oracle基础语法

2022-09-08 栏目:技术知识

Select语句及过滤

(1)语法:

(2)注意

① 大小写不敏感

② SQL可以写一行或多行

③ 关键字不能缩写也不能分行

④ 各个子句一般要分行写

使用缩进提高语句的可读性

(3)使用数字运算符

数字和日期可以使用算数运算符

(4)操作符优先级

① 乘除的优先级高于加减

② 同一优先级运算符从左向右执行

③ 括号内的运算符先执行

④ 空值的数学表达式都为空值

(5)列的别名

是一个重命名的一个列,便于计算,紧跟列名,也可以在列名和别名之间加 ‘AS’ ,别名使用双引号,以便在别名中包含空格或特殊的字符并区分大小写

(6)连接符

用 “||” 来将列与列、列与字符连接在一起

例如将名字和工种id相连:

(7)比较运算

① 基本比较运行符

“== 、> ,>=,<,<=,<>不等于, :=赋值符号”

② 其他比较运算符

BETWEEN…AND,IN(),LIKE,IS NULL

③ 转义符

回避特殊符号使用转义符,只要在特殊符号前加 ‘\’,然后再加上 ESCAPE ''即可。

(8)逻辑运算

① AND 逻辑与,全为真为真

② OR 逻辑或,有一个真就为真

③ NOT 逻辑非,取反

(9)优先级

(10)字符串

字符串可以是SELECT 列表中的一个字符、数字、日期,其中日期和字符只能在单引号中出现。

(11)去除重复行

在SELECT 子句中使用关键字“DISTINCT”删除重复行记录

(12)显示表结构

使用DESCRIBE命令表示表结构

二 函数

1 单行函数

用于操作数据对象,接受参数返回一个结果,只对一行进行变换,每行返回一个结果,可以转换数据类型,可以进行嵌套,参数可以是一列或一个值。

(1)字符函数

① 大小写控制函数

LOWER,UPPER,INITCAP

② 字符控制函数

CONCAT,SUBSTR,LENGTH,INSTR,LPAD,RPAD,TRIM,REPLACE

③ 数字函数

ROUND,TRUNC,MOD

④ 日期函数

在日期上加上或减去一个数字结果仍为日期,两个日期相减返回日期之间相差的天数

可以用数字除以24来向日期中加上或减去天数

三 类型转换

1 隐式数据类型转换

Oracle自动完成下列的转换

2 显式转换

(1)TO_CHAR函数对日期的转换

必须包含在单引号内且大小写敏感,可以包含任意的有效日期格式,日期间用逗号隔开,使用双引号向日期中添加字符

(2)TO_DATA函数对字符的转换

(3)TO_CHAR函数对数字的转换

下面是TO_CHAR函数中经常使用的几种格式

(4)TO_NUMBER函数对字符的转换

四 通用函数

1 NVL函数

将空值转换成一个已知的值

可以使用日期、字符和数字等数据类型

NVL(expr1,expr2)

NVL(expr1,expr2,expr3)类似于三目条件运算符

2 NULLIF函数

NULLIF(expr1,expr2);相等返回null,否则返回expr1列下的数据值

3 COALESCE函数

COALESCE与NVL相比可以同时处理交替的多个值,如果第一个表达式为空,则返回下一个表达式,对其他的参数进行COALESCE。

五 条件逻辑控制

1 CASE表达式

语法:

案例:

2 DECODE函数

语法:

案例: