Oracle SQL基础练习:查询操作与语法示例

需积分: 10 0 下载量 51 浏览量 更新于2024-07-26 收藏 303KB PDF 举报
"这是关于Oracle SQL基本语法的练习,主要涉及选择查询、条件过滤、函数运用以及数据操作。" 在Oracle数据库管理系统中,SQL(Structured Query Language)是用于管理和操作数据库的标准语言。以下是从给定的练习中提炼出的一些关键知识点: 1. **选择查询(SELECT)**:基础的SQL语句,用于从数据库中提取数据。例如,`SELECT * FROM emp WHERE deptno = 30;` 用于选取部门编号为30的所有员工记录。 2. **条件过滤(WHERE子句)**:WHERE子句用于指定查询条件。在`SELECT`语句中,我们可以根据各种条件过滤结果,如`WHERE job = UPPER('clerk')`来获取所有职位为“办事员”的员工。 3. **函数应用(如UPPER)**:`UPPER`函数将字符串转换为大写,确保在大小写敏感的数据库中正确匹配。如`WHERE job = UPPER('clerk')`确保即使输入的职位名称大小写不一致,也能找到匹配的记录。 4. **比较运算符(如>、<、=)**:在`WHERE`子句中,我们使用比较运算符进行条件比较。例如,`WHERE comm > sal`找出佣金高于薪水的员工。 5. **百分比运算(如*0.6)**:在SQL中,可以进行数学运算。例如,`WHERE comm > sal * 0.6`找到佣金超过薪水60%的员工。 6. **逻辑运算符(AND、OR、NOT IN)**:这些运算符用于组合多个条件。例如,`WHERE (deptno = 10 AND job = 'MANAGER') OR (deptno = 20 AND job = 'CLERK')`选取部门10的经理和部门20的办事员。`NOT IN`则用于排除特定值,如`job NOT IN ('MANAGER', 'CLERK')`。 7. **去除重复行(DISTINCT)**:在查询中,`DISTINCT`关键字用于去除结果集中重复的值。例如,`SELECT DISTINCT job FROM emp WHERE comm IS NOT NULL`返回所有收取佣金的员工的不同工作,消除了工作重复的行。 8. **空值处理(IS NOT NULL)**:`IS NOT NULL`用于检查某个字段是否非空。在上述例子中,`WHERE comm IS NOT NULL`确保只选取有佣金记录的员工。 这些基本的SQL语法练习涵盖了选择查询、过滤、函数应用、逻辑运算和数据去重等核心概念,是学习和理解Oracle SQL的基础。通过这些练习,可以有效地提高对Oracle数据库管理系统的操作技能。