SQL语言必备知识点解析####一、基础查询与条件筛选1.查找emp表中sal列的值在1000和3000之间的员工 sql SELECT * FROM emp WHERE sal BETWEEN 1000 AND 3000; 解析:这个查询利用了BETWEEN...AND结构来指定工资范围,是常用的查询方式之一。 2.查找emp表中部门号码为10或20的员工 sql SELECT * FROM emp WHERE deptno = 10 OR deptno = 20; 解析:使用OR逻辑运算符连接两个条件表达式来筛选出符合条件的记录。优化建议是为deptno字段建立索引。 3.查找emp表中ename列以字母S开头的记录 sql SELECT * FROM emp WHERE ename LIKE 'S%'; 解析: LIKE操作符结合通配符%用于模式匹配,此处表示所有ename以\"S\"开头的记录。 ####二、特殊条件查询与处理NULL值4.查询emp表没有佣金comm的雇员的名称、工资和佣金 sql SELECT ename, sal, comm FROM emp WHERE comm IS NULL; 解析:在查询包含NULL值的字段时,应使用IS NULL而非= NULL,因为后者是不正确的语法。 5.查询佣金comm非空且工资大于1300的雇员姓名、工资和佣金 sql SELECT ename, sal, comm FROM emp WHERE comm IS NOT NULL AND sal > 1300; 解析:使用IS NOT NULL来检查非空条件,并通过AND运算符与其他条件组合。 ####三、排序与聚合函数6.按工资降序输出员工姓名和工资 sql SELECT ename, sal FROM emp ORDER BY sal DESC; 解析: ORDER BY子句用于对结果集进行排序,DESC关键字表示降序排列。