附录A 练习和解答
附录 A 练习和解答
目录 第1课的练习 3 练习-1:简介 练习解答11:简介 第1课的练习。 .11 练习1-1:使用SQL SELECT语句检索数据. …12 练习解答1-1:使用SQL SELECT语句检索数据 .17 第2课的练习 练习2-1:对数据进行限制和排序 …21 练习解答2-1:对数据进行限制和排序 25 第3课的练习 28 练习31:使用单行函数定制输出 练习解答3-1:使用单行函数定制输出 .33 第4课的练习 36 练习41:使用转换函数和条件表达式 37 练习解答4-1:使用转换函数和条件表达式 .40 第5课的练习 42 练习51:使用组函数报告聚集数据 43 练习解答5-1:使用组函数报告聚集数据 46 第6课的练习, 练习6-1:使用联接显示多个表中的数据 49 练习解答6-1:使用联接显示多个表中的数据 第7课的练习 55 练习7.1.使用子杏询来醒纳杏询 练习解答71:使用子查询来解决查询 第8课的练习 60 练习81:使用集合运算符 1 练习解答8-1:使用集合运算符 6 第9课的练习. 5 练习91:处理数据 66 444 练习解答91:处理数据 第10课的练习 .74 练习10-1:使用DDL语句创建和管理表】 75 练习解答10-1:使用DDL语句创建和管理表 第11课的练习… .80 练习11-1:创建其它方案对象. 81 练习解答111:创建其它方案对等 83 附录F的练习 8 练习F-l:Oracle联接语法 练习解答F1 Oracle联接语法 90 Oracle Database11g:SQL基础1A-2
Oracle Database 11g:SQL 基础 I A-2 目录 第 I 课的练习........................................................................................................................... 3 练习 I-1:简介............................................................................................................... 4 练习解答 I-1:简介....................................................................................................... 5 第 1 课的练习......................................................................................................................... 11 练习 1-1:使用 SQL SELECT 语句检索数据 ........................................................... 12 练习解答 1-1:使用 SQL SELECT 语句检索数据 ................................................... 17 第 2 课的练习......................................................................................................................... 20 练习 2-1:对数据进行限制和排序............................................................................ 21 练习解答 2-1:对数据进行限制和排序.................................................................... 25 第 3 课的练习......................................................................................................................... 28 练习 3-1:使用单行函数定制输出............................................................................ 29 练习解答 3-1:使用单行函数定制输出.................................................................... 33 第 4 课的练习......................................................................................................................... 36 练习 4-1:使用转换函数和条件表达式.................................................................... 37 练习解答 4-1:使用转换函数和条件表达式............................................................ 40 第 5 课的练习......................................................................................................................... 42 练习 5-1:使用组函数报告聚集数据........................................................................ 43 练习解答 5-1:使用组函数报告聚集数据................................................................ 46 第 6 课的练习......................................................................................................................... 48 练习 6-1:使用联接显示多个表中的数据................................................................ 49 练习解答 6-1:使用联接显示多个表中的数据........................................................ 53 第 7 课的练习......................................................................................................................... 55 练习 7-1:使用子查询来解决查询............................................................................ 56 练习解答 7-1:使用子查询来解决查询.................................................................... 58 第 8 课的练习......................................................................................................................... 60 练习 8-1:使用集合运算符........................................................................................ 61 练习解答 8-1:使用集合运算符................................................................................ 63 第 9 课的练习......................................................................................................................... 65 练习 9-1:处理数据.................................................................................................... 66 练习解答 9-1:处理数据............................................................................................ 70 第 10 课的练习....................................................................................................................... 74 练习 10-1:使用 DDL 语句创建和管理表................................................................ 75 练习解答 10-1:使用 DDL 语句创建和管理表........................................................ 77 第 11 课的练习....................................................................................................................... 80 练习 11-1:创建其它方案对象.................................................................................. 81 练习解答 11-1:创建其它方案对象.......................................................................... 83 附录 F 的练习 ........................................................................................................................ 85 练习 F-1:Oracle 联接语法 ........................................................................................ 86 练习解答 F-1:Oracle 联接语法 ................................................................................ 90
第丨课的练习 在本练习中,您将执行以下任务: ·启动Oracle SQL Developer并创建一个到oral帐户的新连接。 ·使用Oracle SQL Developer查看oral帐户中的数据对象。oral帐户包含 HR方案表。 请注意,练习文件的位置如下: \home\oracle\labs\sql1\labs 如果系统要求您保存任何练习文件,请将其保存到上述位置。 在任何一个练习中,都可能存在以词语“如果您有时间”或“如果您要接受更多的 挑战”为开始的练习。 仅当您在指定时间内完成其它所有练习之后,并希望进一步 挑战您的技能时,再做这些练习。 请认真并准确地完成这些练习。您可以练习保存和运行命令文件。只要您有问题, 可随时咨询您的教师 附注 l)所有书面练习都使用Oracle SQL Developer作为开发环境。尽管建议使用 Oracle SQL Developer,.但也可以使用本课程中提供的SQL*Plus。 2)对于任何查询,从数据库检索的行的序列可能与所示屏幕快照不同。 Oracle Database11g:sQL基a础A-3
Oracle Database 11g:SQL 基础 I A-3 第 I 课的练习 在本练习中,您将执行以下任务: 启动 Oracle SQL Developer 并创建一个到 ora1 帐户的新连接。 使用 Oracle SQL Developer 查看 ora1 帐户中的数据对象。ora1 帐户包含 HR 方案表。 请注意,练习文件的位置如下: \home\oracle\labs\sql1\labs 如果系统要求您保存任何练习文件,请将其保存到上述位置。 在任何一个练习中,都可能存在以词语“如果您有时间”或“如果您要接受更多的 挑战”为开始的练习。仅当您在指定时间内完成其它所有练习之后,并希望进一步 挑战您的技能时,再做这些练习。 请认真并准确地完成这些练习。您可以练习保存和运行命令文件。只要您有问题, 可随时咨询您的教师。 附注 1) 所有书面练习都使用 Oracle SQL Developer 作为开发环境。尽管建议使用 Oracle SQL Developer,但也可以使用本课程中提供的 SQL*Plus。 2) 对于任何查询,从数据库检索的行的序列可能与所示屏幕快照不同
练习-1:简介 这是本课程中众多练习中的第一个练习。本练习结尾处提供了解答(如果需要)。 这些练习包括了相应课程中提供的大部分主题。 启动Oracle SQL Developer I)使用SQL Developer桌面图标启动Oracle SQL Developer。 创建新的Oracle SQL Developer数据库连接 2)要创建新的数据库连接,请在连接导航器中,右键单击“Connection (连接)”。从菜单中选择“New Connection(新建连接) 。此时出现 “New/Select Database Connection(新建/选择数据库连接)”对话框。 3)使用以下信息创建数据库连接: a)Connection Name(连接名):myconnection b)Username(用户名):ora1 c)Password(口令):oral d)Hostname(主机名):1oca1host e)Port(端口):1521 f)SID:ORCL 请确保选中“Save Password(保存口令)”复选框。 使用Oracle SQL Developer Database Connection进行测试和连接 4)测试此新连接。 5)如果状态为“Success(成功)”,则可使用这个新连接连接到数据库 在连接导航器中浏览表 6)在连接导航器中,查看在“Tables(表)”节点中可用的对象。验证是否存在 以下表: COUNTRIES DEPARTMENTS EMPLoYEES IOB GRADES JOB HISTORY TORS LOCATIONS REGIONS T)浏览EMPLOYEES表的结构。 8)查看DEPARTMENTS表的数据 Oracle Database11g:SQL基础lA-4
Oracle Database 11g:SQL 基础 I A-4 练习 I-1:简介 这是本课程中众多练习中的第一个练习。本练习结尾处提供了解答(如果需要)。 这些练习包括了相应课程中提供的大部分主题。 启动 Oracle SQL Developer 1) 使用 SQL Developer 桌面图标启动 Oracle SQL Developer。 创建新的 Oracle SQL Developer 数据库连接 2) 要创建新的数据库连接,请在连接导航器中,右键单击“Connections (连接)”。从菜单中选择“New Connection(新建连接)”。此时出现 “New/Select Database Connection(新建/选择数据库连接)”对话框。 3) 使用以下信息创建数据库连接: a) Connection Name(连接名):myconnection b) Username(用户名):ora1 c) Password(口令):ora1 d) Hostname(主机名):localhost e) Port(端口):1521 f) SID:ORCL 请确保选中“Save Password(保存口令)”复选框。 使用 Oracle SQL Developer Database Connection 进行测试和连接 4) 测试此新连接。 5) 如果状态为“Success(成功)”,则可使用这个新连接连接到数据库。 在连接导航器中浏览表 6) 在连接导航器中,查看在“Tables(表)”节点中可用的对象。验证是否存在 以下表: COUNTRIES DEPARTMENTS EMPLOYEES JOB_GRADES JOB_HISTORY JOBS LOCATIONS REGIONS 7) 浏览 EMPLOYEES 表的结构。 8) 查看 DEPARTMENTS 表的数据
练习解答-1:简介 启动Oracle SQL Developer I)使用SQL Developer桌面图标启动Oracle SQL Developer。 a)双击SQL Developer桌面图标。 89 SQL Developer SQL Developer界面显示。 Oracle SQL Developer a× File Edit View Navigate Run Source Versioning Migration Tools Help 召a目日司k鲁角0-0·鸟·可 民的T Connections Extendec Snippets 【SQL History onnections Editing 0 racle Database11g:sQL基a础A-5
Oracle Database 11g:SQL 基础 I A-5 练习解答 I-1:简介 启动 Oracle SQL Developer 1) 使用 SQL Developer 桌面图标启动 Oracle SQL Developer。 a) 双击 SQL Developer 桌面图标。 SQL Developer 界面显示
练习解答1-1:简介(续) 创建新的Oracle SQL Developer数据库连接 2)要创建新的数据库连接,请在“Connections Navigator(连接导航器)”中, 右键单击“Connections(连接)”并从菜单中选择“New Connection(新建 连接)”。 Connections 型7 Connections New Connection Import Connections 个 Export connection 此时出现“New/Select Database Connection(新建/选择数据库连接)”对话框。 New/Select Database Connection Connection...Connection Connection Name 业sername Password Oracle defauk习 Kerberos Authentication ☐Proxy Connection Port 1521 S.D xe ○5 rvice name Help sve Slear Iest Cannect Cancel 3)使用以下信息创建数据库连接: a)Connection Name(连接名):myconnection b)Username(用户名):ora1 c)Password(口令):ora1 d)Hostname(主机名):1oca1host e)Port(端口):1521 f)SID:ORCL Oracle Database11g:SQL基础1A-6
练习解答 I-1:简介(续) Oracle Database 11g:SQL 基础 I A-6 创建新的 Oracle SQL Developer 数据库连接 2) 要创建新的数据库连接,请在“Connections Navigator(连接导航器)”中, 右键单击“Connections(连接)”并从菜单中选择“New Connection(新建 连接)”。 此时出现“New/Select Database Connection(新建/选择数据库连接)”对话框。 3) 使用以下信息创建数据库连接: a) Connection Name(连接名):myconnection b) Username(用户名):ora1 c) Password(口令):ora1 d) Hostname(主机名):localhost e) Port(端口):1521 f) SID:ORCL
练习解答1:简介(续) 请确保选中“Save Password(保存口令)”复选框。 New Select Database Connection myconnection oral Password Oracle Bole Hostname ocalhost 1521 ●Service na telp☐awe9 lear Test☐Connect Cancel 使用Oracle SQL Developer Database Connection进行测试和连接 4)测试此新连接。 New /Select Database Connection Username 。c1 Patrword default ☐OS Authentication Connection Txpe Basic Kerberos Authentication ☐Proxy Connection Port SD OService name Status Success 0 racle Database11g:sQL基础A-7
练习解答 I-1:简介(续) Oracle Database 11g:SQL 基础 I A-7 请确保选中“Save Password(保存口令)”复选框。 使用 Oracle SQL Developer Database Connection 进行测试和连接 4) 测试此新连接
练习解答1-1:简介(续) 5)如果状态为“Success(成功)”,则可使用这个新连接连接到数据库 New/Select Database Connection oral Pa:word 回Save Password Oracie Role defaul 圆os鱼uthenticstion Kerberos Authentication □Proxy Connection localhost 152 orcl 在创建了一个连接后,用于此连接的“SQL Worksheet(SQL工作表)”将自动 打开。 Oracle SQL Developer 一o☒ Dile [dit Vies Navigate gun Source verslaning Migration Tools Help 马7 ■●1 myconnectio SQL History Oracle Database11g:SQL基础lA-8
练习解答 I-1:简介(续) Oracle Database 11g:SQL 基础 I A-8 5) 如果状态为“Success(成功)”,则可使用这个新连接连接到数据库。 在创建了一个连接后,用于此连接的“SQL Worksheet(SQL 工作表)”将自动 打开
练习解答-1:简介(续) 在连接导航器中浏览表 6)在连接导航器中,查看在“Tables(表)”节点中可用的对象。验证是否存在 以下表: COUNTRIES DEPARTMENTS EMPLOYEES JOB GRADES JOB HISTORY JOBS LOCATIONS REGTONS Connections 日且Connections 白myconnection 中自Tables NTS 南围OB_HISTORY 由国LOCATIONS 由国REGIONS 中图VMes 由Indexes 》 racle Database11g:SQL基础1A-9
练习解答 I-1:简介(续) Oracle Database 11g:SQL 基础 I A-9 在连接导航器中浏览表 6) 在连接导航器中,查看在“Tables(表)”节点中可用的对象。验证是否存在 以下表: COUNTRIES DEPARTMENTS EMPLOYEES JOB_GRADES JOB_HISTORY JOBS LOCATIONS REGIONS
练习解答-1:简介(续) T)浏览EMPLOYEES表的结构 □I屋a□口myconnection国EMPLOYEES 酸7 Columns Datal Constraints Grants |Statistics |Trigg 围EMPLOYEE图 Z Actions.. 目EMPLOYEE_ID Column Name Data Type Nullable Dat 目FIRST-.NAME EMPLOYEE ID NUMBER(6,0) LAST-NAME FIRST_NAME VARCHAR2(20 BYTE)Yes (nu LAST_NAME VARCHAR2(25 BYTE No u HIRE DATE EMAIL VARCHAR2(25 BYTE No (nul PHONE_NUMBER VARCHAR2(20 BYTE)Yes (nul 目SALARY HIRE_DATE DATE n 目COMMISSION_PCT JOB_ID VARCHARZ(10 BYTE)No (nu 目MANAGER ID SALARY 目DEPARTMENT-.ID NUMBER(8,2) Yes (nul ☐JOB_CRADES SQL History 8)查看DEPARTMENTS表的数据 myconnection DEPARTMENTS ▣ 7 Columns Data Constraints Crants Statistics Trigg r 随昆X是晶Sort..Filter. A 国COUNTRIES 图DEPARTMENT.ID DEPARTMENT-.NAME目 DEPARTMENTS 10Administration 目DEPARTMENT_ID 2 20 Marketing 目DEPARTMENT_NAME 3 50 Shipping 目MANACER_ID 60T 目LOCATION_ID 目EMPLOYEE 80Sales 6 90 Executive 7 HISTOR 110 Accounting 190 Contracting 用LOCATIONS 【SQL History Oracle Database11g:SQL基a础1A-10
练习解答 I-1:简介(续) Oracle Database 11g:SQL 基础 I A-10 7) 浏览 EMPLOYEES 表的结构。 8) 查看 DEPARTMENTS 表的数据