Oracle SQL查询教程:LIKE操作与WHERE条件

需积分: 9 36 下载量 138 浏览量 更新于2024-08-15 收藏 3.47MB PPT 举报
"本文主要介绍了Oracle数据库中的SQL查询语句,特别是关于WHERE条件查询和LIKE操作符的使用。文中通过实例展示了如何查询特定条件的数据,包括查找特定字符、模式匹配以及算术表达式的运用。" 在Oracle SQL中,`SELECT`语句用于从数据库中检索数据,而`WHERE`子句则是用来指定查询条件的关键部分。在【标题】和【描述】中,我们看到了几个使用`WHERE`和`LIKE`操作符的示例,这些操作符在日常的数据库查询中非常常见。 1. `LIKE`操作符用于模糊匹配。在第一个示例中: ``` SELECT * FROM s_emp WHERE last_name like '%a%' ``` 这条语句会返回所有姓氏中包含字母'a'的员工信息。`%`是通配符,`%a%`表示任何位置出现字母'a'的情况。 2. 第二个示例展示了如何查询特定模式的表名: ``` SELECT table_name FROM user_tables WHERE table_name like 'S\_%' escape '\' ``` 在这里,`S\_%`表示查询以'S_'开头的表名,`\`是转义字符,用于将`_`解释为一个字符而非通配符。 3. 第三个示例则使用了预定义的通配符模式: ``` SELECT * FROM s_emp WHERE last_name like '_a%' ``` 这会找到所有姓氏第二个字母为'a'的员工。 在【部分内容】中,我们看到更多关于`SELECT`查询的扩展,包括: - 查询指定列:你可以选择性地列出要查询的列,如`SELECT dept_id, salary FROM s_emp`,这只会返回部门ID和工资两列数据。 - 使用算数表达式:可以对字段进行算术运算,如`SELECT salary * 12 FROM s_emp`,计算员工的年薪。 - 运算符的优先级:通过括号可以控制运算顺序,例如`SELECT last_name, salary, 12 * (salary + 100) FROM s_emp`,确保先执行括号内的加法运算。 - 空值处理:虽然未直接提及,但通常在`WHERE`子句中可以使用`IS NULL`或`IS NOT NULL`来检查某个字段是否为空。 掌握`SELECT`和`WHERE`条件查询是理解Oracle SQL的基础,而`LIKE`操作符则提供了更灵活的数据筛选能力。通过结合算数表达式和其他操作符,我们可以构建出复杂的查询来满足各种数据检索需求。