你的位置:首页 > 数据库

[数据库]0005 《SQL必知必会》笔记01


1、SELECT基本语句:

SELECT 字段名1,···,字段名n FROM 表名

2、检索所有字段,用"*"替换字段名,这会导致效率低下

SELECT * FROM 表名;

3、去除重复项,“DISTINCT”作用于所有字段

SELECT DISTINCT 字段名1,···,字段名n FROM 表名;

4、若检索结果过多,可限定结果的条数

SELECT 字段名 FROM 表名 WHERE ROWNUM<=n;

5、对检索出的数据进行排序,ASC为升序,也为默认排序方式;DESC为降序。ORDER BY 语句一定是最后一条语句。如果不排序,那么不能认为检索出的数据的顺序有任何意义

SELECT 字段名 FROM 表名 ORDER BY 字段名1 ASC|DESC,```,字段名n ASC|DESC;

6、WHERE 子句,操作符如下,语法都为:WHERE 字段名 操作符 值;注意Oracle至少默认不支持“!<”和“!>”

操作符说明操作符说明
=等于  
!=不等于<>不等于
<小于>大于
<=小于等于>=大于等于
BETWEEN AND双侧闭区间IS NULL空值

7、WHERE子句的多条件过滤——AND,多个子条件同时满足

WHERE 子条件1 AND ··· AND 子条件n

8、WHERE 子句的多条件过滤——OR,满足任意一个条件

WHERE 子条件1 OR ···OR 子条件n

9、WHERE子句——IN操作符,满足IN的任意个值,与OR类似,但有如下优点:语法更清楚直观;更易管理求值顺序;比一组OR执行快;可以包含其他SELECT语句,能动态建立WHERE子句。

WHERE 字段名 IN(值1,···,值n)

10、NOT操作符:否定其后面的条件。在复杂语句中,NOT非常有用

WHERE NOT 条件;

11、AND的求值优先级高于OR,可以用"()"改变优先级