教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 实用模板 >

SQL标准语言内容大全(2)

来源:网络收集 时间:2026-07-16
导读: ? 3、* 表示查询所有列。 4、hr.department指查询hr schema(人力资源方案)中的departments(部门)表。 5、查询出来的结果是一个二维表,表头是字段名,每一行数据即代表一个部门对象的所有信息。 部门表所有数据

?

3、* 表示查询所有列。

4、hr.department指查询hr schema(人力资源方案)中的departments(部门)表。

5、查询出来的结果是一个二维表,表头是字段名,每一行数据即代表一个部门对象的所有信息。

部门表所有数据 查询出部门表的所有数据。

select * from hr.departments;

?

? 练习-所有表的数据 (15分钟)1、用select语句依次查询所有表的数据。

select * from hr.countries; select * from hr.regions;

? ? ? ? ? ? ?

select * from hr.locations; select * from hr.jobs; select * from hr.job_history; select * from hr.employees; select * from hr.departments;

2、将每个表的查询结果与之前用show columns语句查询出的表结构进行对照。

show columns from hr.countries;

? ?

2-2错误的sql语句

sql语句在输入的过程中经常会出错,常见的错误比如说: 1、关键字写错,如select 写成了 selct, from 写成了 form

2、from 对象写错了,如 departments写成了department,或忘记加hr. 3、字段名写错了

....

当sql语句写错的时候,执行sql语句会报错,给出错误信息并且会附带一个错误码,错误信息试图描述错误出现在语句的什么位置,而错误码用来指明错误的类型。

? 练习-select改错 (5分钟)找出以下语句的错误,修改使之能正确运行:

selcet * form hr.employes;

?

2-3选择特定列

?

1、除了用 * 查询所有列之外,我们也可以在select子句中指定列名,按顺序列出所有想要查询的列名,用逗号分隔,例如:

select location_id, department_id from hr.departments;

?

2、在查询的每个列名后面,可以设置列别名,在列名和列别名之间可选用关键字 as,例如:select location_id lid, department_id as dep_id from hr.departments; 如果列别名包含空格或特殊字符,或者想大小写区分,可用双引号括起来。

?

练习-指定列和别名

?

(5分钟)在员工表中查询员工编码、姓氏、岗位编码、聘用日期,将标题分别改为:员工#、姓名、岗位、Hire Date。

? ?

查询员工表指定字段

查询员工表,显示每位员工的员工编号、姓氏(last_name)、职务代码、聘用日期。 如果忘记了字段名,记得用show columns from hr.employees; 列别名 将以下sql语句的列名修改为中文别名

select location_id, department_id from hr.departments;

? ?

? ?

2-4选择算术表达式

1、在select子句中,可以使用算术表达式,可将已有列参与表达式计算输出一个新的显示列(只是显示,没有真的存储新列),例如:

select last_name, salary, salary+300 from hr.employees;

?

2、算术表达式可用运算符 + - * /,其优先级为 * / + - ,可用小括号强制优先计算。例如:

select last_name, salary, 12*(salary+100) from hr.employees;

?

以上最后一列表示年薪,月薪加每月奖金 然后乘以12个月。

3、空值:如果某一列没有存入数据,就认为该值为空,空不同于零或空格,就是指没有,我们的例子数据库中,将空值的查询返回 null,例如:

select last_name, job_id, salary, commission_pct from hr.employees;

?

提成比率字段,只有销售岗位才有,普通员工的提成比率为空值。

4、如果算术表达式中的字段为空值,则结果也为空值,不会报错。例如:

select last_name, 12 * salary * commission_pct from hr.employees;

演示-工资加300 查询员工表的姓氏、工资、工资+300。

select last_name, salary, salary+300 from hr.employees; 演示-年薪表达式

查询员工表中每个员工的年薪,年薪 为 每个月月薪+100 ,然后乘以12月。 select last_name, salary, 12*(salary+100) from hr.employees; 演示-空值 查询员工表的提成比率

select last_name, job_id, salary, commission_pct from hr.employees;

演示-表达式中的空值 查询员工的年度提成金额

select last_name, 12 * salary * commission_pct from hr.employees;

练习-找错 (5分钟)以下语句有四个错误,请找出错误所在: select employee_id, last_name

sal x 12 ANNUAL SALARY from hr.employees;

2-5连接运算符

1、连接运算符 ||:将列链接到其它列、字符串、算术表达式或常数值,从而形成一个单一的输出列。例如:

select last_name || first_name as \

2、文字字符串:用单引号包含,可用在select子句中,作为文字字符串,查询结果中每个行都会显示。

select 'abc' from hr.employees;

3、文字字符串可用于连接运算,用以分割及描述合成的内容,例如:

select '姓:'||last_name || ',名:'||first_name as \

演示-连接姓名 将员工表的姓氏和姓名连接起来,形成一个输出列“name”。 select last_name || first_name as \ 演示-文字字符串 演示文字字符串

select 'hello' from hr.employees;

演示-文字连接 将姓氏和名字连接起来,中间增加文字字符串说明。

select '姓:'||last_name || ',名:'||first_name as \ 练习-员工头衔 (5分钟)将员工姓氏与岗位连接起来,中间用逗号及空格分割,然后设置别名为 Employee and title。

2-6重复行

1、在select查询语句中,默认结果会显示所有的行,即使这些行是重复的,例如

select department_id from hr.employees;

查询结果会看到许多部门编码是重复的。

2、可以通过 distinct 关键字消除重复行,例如:

select distinct department_id from hr.employees;

如上,distinct放在要消除重复的列前,以空格分离。

3、可以在distinct限定的列后面再指定其它列,消除重复的结果会影响所有的列,根据列的组合进行重复的消除,例如:

select distinct department_id, job_id from hr.employees;

演示-消除重复 查询所有员工一共分布在多少个部门。

select distinct department_id from hr.employees;

练习-提成比率 (5分钟)请查询当前员工一共设置了几种提成比率。

2-7基本select语句总结

select * | {[distinct] column | expression [alias], ...} from table;

上面语句中:

1、* : 选择所有列 2、distinct: 消除重复项 3、column: 选择制定的列 4、expression:表达式 5、alias: 列别名

3-1where子句

1、在sql 语言中,使用where子句可以限制查询的范围,例如: …… 此处隐藏:1842字,全部文档内容请下载后查看。喜欢就下载吧 ……

SQL标准语言内容大全(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/520304.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)