天天看点

PL/SQL数据库查询1.SELECT子句和FROM子句

一个完整的SQL命令(SELECT 和FROM是不可少的)

SELECT…

FROM…

[WHERE…

GROUP BY…

ORDER BY…]

3.1普通查询

SELECT:用于指定检索数据库的哪些列; FROM:用于指定从哪一个表或视图中检索数据

1.SELECT子句和FROM子句

SELECT ORDER_NO,CONTRACT
FROM IFSAPP.SHOP_ORD A
WHERE ROWNUM=1;
           

备注:列可以在中间输入,然后如果两列需要调整位置,顺序调整则可

结果

PL/SQL数据库查询1.SELECT子句和FROM子句
SELECT ORDER_NO,CONTRACT SITE
FROM IFSAPP.SHOP_ORD A
WHERE ROWNUM=1;
           

备注:SITE是CONTRACT的别名

结果

PL/SQL数据库查询1.SELECT子句和FROM子句
SELECT ORDER_NO, REVISED_QTY_DUE/2
FROM IFSAPP.SHOP_ORD A
WHERE ROWNUM=1;
           

在select语句中可以使用表达式

PL/SQL数据库查询1.SELECT子句和FROM子句

WHERE子句

WHERE子句中的条件可以是一个包含等号或不等号的条件表达式,也可以是一个包含IN,NOT IN, BETWEEN, LIKE ,IS NOT NULL等比较运算符的条件式,还可以是由单一的条件表达式通过逻辑运算符组成的复合条件。

1,包含单一条件的WHERE子句

=,!<>,》,》=,<,<=.

2, IN, BETWEEN…AND,LIKE’%’, IS NULL,NOT;

LIKE ‘S%’ 这个代表为S开头

LIKE 'W—'这个查询查询以W开头的四位;

NOT不能单独使用,必须在在前面几种去算符中的任意一种前面,表示对原来条件的否定。

算术运算符组成的表达式也可以用在WHERE子句中;

AND (表示两个同时成立);OR(任选1个就可以)

ORDER BY 子句

查询的结果升序的返回结果;

DESC(这个是按降序的来排列)

如果有多个表达式,则根据第一表达式来查询;只有第表表达式相同时,才和第二表达式来查询;

同样算数运算符号同样可以在这个子句中运行;

HAVING 和GROUP BY 在第六章介绍

高组查询

连接查询(这个是多个表和视图的查询)

1等式查询

简单查询:就是每一行的数据可以来自两个表;

外部查询:返回简单查询的所有行,还返回一个表中与另一个表不匹配的行。

(+)则表是这一个表中多余的行也可以查询出来;

2.非等式查询

有可能是条件查询

子查询

子查询是用在WHERE子句中;

子查询的SELECT命令中不能带ORDER BY子句

设置操作符

UNION(这个是并集)

INTERSECT (交集)