Oracle数据库查询语法详解

需积分: 1 0 下载量 7 浏览量 更新于2024-09-16 收藏 9KB TXT 举报
本文主要介绍了Oracle数据库中的一些常用SQL语法,包括查询表格、显示列信息、选择特定列、使用DISTINCT去除重复、处理NULL值、使用WHERE子句进行条件筛选、以及LIKE和IN操作符的运用。 在Oracle数据库管理中,SQL语言是不可或缺的工具,用于数据的查询、插入、更新和删除等操作。以下是一些常见的SQL语句和其功能: 1. 查询所有表: 使用`SELECT object_name FROM user_objects WHERE object_type = 'TABLE';`可以列出当前用户下的所有表。 2. 查询所有列: `SELECT * FROM emp;`可以查询`emp`表中的所有列,`*`代表所有列。 3. 显示列信息: `DESC emp;`用于描述`emp`表的列信息,包括列名、数据类型等。 4. 选择特定列: `SELECT ename, deptno, job, sal FROM emp;`选择`emp`表中的`ename`、`deptno`、`job`和`sal`列。 5. 去除重复行: 使用`DISTINCT`关键字,如`SELECT DISTINCT deptno, job FROM emp;`可获取`deptno`和`job`组合的唯一值。 6. 处理NULL值: `SELECT ename, sal FROM emp WHERE sal IS NOT NULL;`将筛选出`sal`列非NULL的记录。 7. WHERE子句: - `WHERE`子句用于添加查询条件,如`SELECT ename, sal FROM emp WHERE sal > 2000;`将返回`sal`大于2000的员工。 - `WHERE`子句支持逻辑运算符,如`AND`和`OR`,以及比较运算符,如`BETWEEN`和`LIKE`。 8. LIKE操作符: - `LIKE`用于模式匹配,如`LIKE 'S%'`表示以"S"开头的字符串。 - `%`通配符代表零个、一个或多个字符,`_`代表单个字符。例如: - `SELECT ename, sal FROM emp WHERE ename LIKE 'S%';`将返回名字以"S"开头的员工。 - `SELECT ename, sal FROM emp WHERE ename LIKE '%S%';`将返回名字中包含"S"的员工。 - `SELECT ename, sal FROM emp WHERE ename LIKE '__A%';`将返回名字第二位是"A"的员工。 9. IN操作符: - `IN`用于检查值是否在指定列表内,如`SELECT ename, sal FROM emp WHERE sal IN (800, 1250);`将返回`sal`值为800或1250的员工。 - 还可以嵌套查询,如`SELECT ename, sal FROM emp WHERE sal IN (SELECT sal FROM emp WHERE deptno = 30);`返回部门编号为30的员工的工资。 10. IS NULL操作符: `SELECT DISTINCT job FROM emp WHERE hiredate IS NULL;`将返回未设置入职日期的职位信息。 通过熟练掌握这些基本的SQL语法,你可以有效地在Oracle数据库中进行数据操作和查询。在实际工作中,根据具体需求灵活运用这些语法,可以极大地提高工作效率。