SQL语言之SQL运算符
时间:2010-08-28 来源:jcbut2008
- 比较运算符
- 等于和不等于
- 包括<,>,<=,>=,<>,!=
- Oracle服务器依据某些数据库设置将字符数据隐式转换为数值
- 在比较字符字面值时,oracle会将其转换为连续字符值的和:K+i+n+g=393(75+105+110+103)
- 使用BETWEEN运算符的范围比较
- 检索列或表达式值是否介于两个边界值的范围之内。
- BETWEEN相当于“大于等于”和“小于等于”两个运算符
- 例:WHERE salary BETWEEN 3400 AND 4000
- 使用IN运算符设置比较
- IN运算符测试某项是不是一组字面值的成员。
- IN运算符相当于一系列的OR条件。
- 例:WHERE salary IN(1000,4000,5000)
- 使用LIKE运算符的模式比较
- LIKE运算符专用于字符数据,它提供了搜索字母或单词的强大机制。
- %和_两个通配符可用于LIKE运算内。%可以表示0个或多个通配符字符。_表示1个通配符字符。通配符字符可以出现在字符字面值的开头、中间或结尾。它们甚至能够单独出现,如WHERE first_name like '%'
- 当字面值中有%或_时,需要使用ESCAPE标识符,临时禁用%、_的特殊含义,将它们作为普通字符看待。一般来说,ESCAPE字符使用反斜杠(\)标识,但也可使用其它字符(如$, @,或字母)。
例:WHERE job_id like 'SA\_%' ESCAPE '\' - 使用IS NULL运算符的NULL比较
- 与NULL比较,使用IS NULL而不是= NULL
- 布尔运算符
- AND运算符:FALSE AND NULL=FALSE
- OR运算符:
- NOT运算符:NOT NULL=NULL
- 优先规则
优先级 |
运算符符号 |
运算 |
1 |
() |
括号 |
2 |
/ * |
除法和乘法 |
3 |
+ - |
加法和减法 |
4 |
|| |
串联 |
5 |
= > < >= <= |
等于和不等于比较 |
6 |
LIKE, IS NULL, IN |
模式、NULL和集合比较 |
7 |
BETWEEN |
范围比较 |
8 |
!= <> |
不等于 |
9 |
NOT |
NOT逻辑条件 |
10 |
AND |
AND逻辑条件 |
11 |
OR |
OR逻辑条件 |