Oracle查询语句一

1.SELECT 基本语法。

SELECT *|{[DISTINCT] column|expression [alias],...}

FROM table_name

[WHERE conditions]

[GROUP BY]

[ORDER BY column [ASC|DESC]];

在Oracle中,大小写不敏感,可以多行编写,关键字不可以缩写或跨越多行,通常每个子语句占据一行,使用缩进增加可读性。

2.列的别名。

用于重命名列表名;紧跟在列名后,列名和别名之间可以加AS(可选);如果别名包含大小写或者空格,则必须用双引号引起。


3.去除重复行。

使用DISTINCT关键字去除重复行。

SELECT DISTINCT deptno FROM emp;

4.运算符的优先级。

0     括号

1     算术运算符 */+-

2     连接运算符||

3     比较运算符>,<,=,...

4     IS [NOT] NULL, LIKE, [NOT] IN

5     [NOT] BETWEEN

6     NOT

7     AND

8     OR

示例:将多个列或文本连接在一起


5.WHERE子语句。

SELECT字句中的表达式和WHERE条件中的表达式里面都可以使用字符串和日期。字符串和日期要用单引号标识。字符串大小写敏感。日期有一定格式,默认是DD-MON-YY.

使用比较运算符:

=,>,>=,<,<=,<>

BETWEEN ... AND ...

IN(SET)

LIKE '...[%]...[_]...' ESCAPE '\'

IS NULL

使用逻辑运算符:

--AND 

SELECT ename,sal

FROM emp

WHERE sal>=400

AND sex='1';

--OR

SELECT ename,sal

FROM emp

WHERE sal>=400

OR sex='1';

--NOT

SELECT ename,sal

FROM emp

WHERE NOT(sal>=400

AND sex='1');

6.模糊查询。

通配符

%:代表0个或多个字符

_:代表1个任意字符

示例:查询ename中第二个字符为S

SELECT ename,sex,sal FROM emp WHERE ename LIKE '_S%';

7.针对null值得查询。

Oracle默认将null作为最大值。

判断某个列是否是null不可以使用=,必须使用is null或is not null。

8.数据排序。

查询语句中的数据排序使用ORDER BY子句实现。

排序分为升序和降序,关键字分别是ASC和DESC。

ORDER BY子句必须是SELECT语句的最后一个子句。

ORDER BY子句使用的排序列可以是普通列,也可以使用列的别名,表达式,SELECT子句字段的位置。

ORDER BY子句可以使用多个字段进行排序。

Oracle排序时默认将null值作为最大值。

SELECT ename,job,sal salary,hiredate FROM emp ORDER BY salary DESC,hiredate ASC; 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值