3.2.5
以指定顺序查看数据
ORDER BY子句可帮助按照希望出现的顺序检索查询。可以通过指定 DESC 参数或 ASC 参数来按升序顺序或降序顺序进行排序。如果没有指定任何参数,则默认为升序排序。还可对多列进行排序。
语法如下:
SELECT columnname1, columnname2, ?, columnnameN FROM tablename WHERE
ORDER BY columnname1, columnname2, … , columnnameN;
实验3-11要以雇员的工作的顺序显示收入大于或等于 3000 的雇员,执行如下所示的语句:
图 3-13
请给出运行结果:
第 11 页 共 19 页
3.2.6
使用计算列查看数据
除了从数据库表中直接提取的列外,SQL 还可以用于计算多个列中的数据的值。可在查询中使用 SQL 表达式执行所有类型的算术操作。唯一必须注意的是,这些表达式涉及的列应该只属于数字数据类型。
语法如下:
SELECT columnname1, (columnname2
实验3-12要从雇员表中显示雇员总薪金,执行如下语句:
图 3-14
请给出运行结果:
注意: 在上面的命令中,NVL 函数用来将空值转换为数字值,我们在此将其转换为“0”。我们必须按任意表达式执行此操作,表达式中包含空值,因为操作数返回
第 12 页 共 19 页
NULL。因此,为避免在任何操作中出现这种错误,我们使用 NVL 函数。
3.3 退出 SQL
在 SQL 提示符下键入 Exit (“退出”)或执行如下步骤:
? 从 Main Menu(“主菜单”)中选择 File(“文件”)选项。 ? 单击 Exit(“退出”)。
? 您也可以在命令提示符下输入“Exit”。
3.4 实验练习:
在scott用户模式下,完成下查询需求,给出相关查询语句和运行结果:
(1) 列出各种类别\工作的雇员的姓名,假定不知道销售部的部门编号.
(2) 列出薪金高于公司平均水平的所有雇员.
(3) 列出与\从事相同工作的所有雇员.
第 13 页 共 19 页
(4) 列出分配有雇员数量的所有部门的详细信息,即使是分配有0个雇员.
(5) 列出各种类别工作的最低工资.
(6) 列出各个部门MANAGER的最低薪金.
(7) 列出按计算的字段排序的所有雇员的年薪.
(8) 选择部门 30 中的雇员。
第 14 页 共 19 页
(9) 列出所有办事员的姓名、编号和部门。
(10) 找出佣金高于薪金的雇员。
(11) 找出佣金高于薪金 60% 的雇员。
(12) 找出部门 10 中所有经理和部门 20 中所有办事员的详细资料。
第 15 页 共 19 页