您的位置:首页 > 数据库 > Oracle

Oracle部分知识点

2010-11-20 21:45 190 查看
1.UNION

集合查询UNION(并操纵),查询结果是元组的集合。

使用UNION将多个查询结果合并起来,系统会自动去掉重复元组。

使用UNION操作的各结果表的列数、数据类型必须相同。如果同一列的字段类型为CHAR和VARCHAR2,则将CHAR转化成VARCHAR2。

'' || CHAR类型字段 结果为VARCHAR2类型。

例:

查询计算机系学生及年龄不大于19的学生

SELECT * FROM student WHERE sdept = 'cs'

UNION

SELECT * FROM student WHERE sage <= 19

 

2.UNION ALL

和UNION功能相同,只是不去除重复行。

 

3.NVL

将字段为NULL的转换成指定值

例:

查询所有student的birthday字段,如birthday为空,默认输出'1980-01-01'

SELECT NVL(birthday, '1980-01-01') birthday FROM student

 

4.NOT EXISTS 和 NOT IN

例:

选出在malestudent中不存在,但在student中存在的所有记录

(1)SELECT * FROM student WHERE NOT EXISTS (SELECT * FROM malestudent WHERE malestudent.name = student.name);

(2)SELECT * FROM student WHERE name NOT IN (SELECT * FROM malestudent);

 

5.Statement 和 PreparedStatement

Statement:用于执行静态SQL语句并返回结果对象

PreparedStatement:用于执行预编译的SQL语句,SQL语句预编译且存储在PreparedStatement对象中,然后可使用此对象高效的多次执行该语句。

Connection.preparedStatement(String sql)创建一个PreparedStatement对象来讲参数化的SQL语句发送到数据库

例:

PreparedStatement pstmt = conn.preparedStatement("UPDATE employee SET salary=? WHERE id=?");

pstmt.setBigDecimal(1, 5000.00);

pstmt.setInt(2, 110592);

pstmt.executeQuery();

 

6.NULL

NULL +/- 任意值 结果为NULL 即对NULL进行算术运算结果为NULL

NULL || 任意值 结果为任意值

集合函数对NULL操作,结果为NULL 如SUM(NULL) 则结果为NULL

 

7.GROUP BY

用来进行分组,和分组函数使用。后面的字段不能使用别名。

 

8.BETWEEN...AND 包括边界值
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息