没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
Oracle 系列《一》:简单 SQL 与单行函数
使用
用户下的 表和 表完成下列练习,表的结构说明如下
员工表 员工号 员工姓名 工作 上级编号
受雇日期 薪金 佣金 部门编号
部门表 部门编号 部门名称 地点
工资 = 薪金 + 佣金
登录 数据库
、
、
若是使用 的账号进行登录的话,则使用以下语句
【】!"# 表内容查询
!!$%&'(")*
出错,原因是没有找到该表,因为该表时 $%% 用户的表,所以查询时应该加
上 + 就可以了
【】显示当前用户
,
【-】查看当前用户的所有表
!!$%&'(")
【.】若想重复执行上一条 语句,则在 命令行下输入//即可
【0】查询一张表的结构,例如 表
【1】在雇员表中查询雇员的编号、姓名、工作
!!$%22'(")
【3】可以为列名取别名,在 4 下 如果英文别名不加上双引号则
会变成大写
!!$%编号2姓名2工作 '(")
【5】查询所有的工作
!!$%67%78$%'(")*
工作可能会重复,加上 67%78$% 关键字
【9】若要求按照以下的格式进行结果输出,如
8:3.1928:"7%;2<:$!(=
!!$%>8:>????>28:>????>2<:>??
'(")
【@】要求列出每个雇员的姓名及年薪
!!$%2&'(")
这里年薪最好用别名进行标识,可以一眼就能明白
【】查看每月可以得到奖金的雇员信息
!!$%&'("A;!(!8%8B)
【】要求基本工资大于 0@@,同时可以领取奖金的雇员信息
!!$%&'("A;!(!0@@C868%
8B)
如果是或的是关系,则使用 (
【-】查询基本工资不大于 0@@,同时不可以领取奖金的雇员信息
!!$%&'("A;!(!8%0@@C868%
8B)
【.】查询在 95 年雇佣的全部雇员信息,D!%A!!8++C86包含等于的
情况
!!$%&'("
A;!(!D!%A!!8>@E<C8E5>C86>-E6!$E5>)
【0】 对大小敏感,所以查询时名字要区分大小写
【1】要求查询出雇员编号不是 3-19、3.99 的雇员信息
!!$%&'("
A;!(!8%783-1923.99)
【3】 中 7=! 语句要注意通配符 F和 G
!!$%&'("
A;!(!7=!>F5F>)
【5】查看雇员编号不是 3-19 的雇员信息,使用H或IJ
!!$%&'("
A;!(!H3-19)
【9】要求对雇员的工资由低到高进行排序,升序为默认C$,降序
6!$
!!$%&'("
K(B#D)
【@】查看出部门号为 @ 的雇员信息,查询的信息按照工资从高到低,若工
资相等则按雇用日期从早到晚排列
!!$%&'("
A;!(!J@
K(B#D6!$2C$)
数据库系统中,每个数据库之间区别最大的就是在函数的支持上,单行函数是
最简单的函数,单行函数分为
、字符函数:接受字符输入并且返回字符或数值
、数值函数:接受数值输入并返回数值
-、日期函数:对日期型数据进行操作
.、转换函数:将一种数据类型转换为另一种数据类型
0、通用函数:8L、6!$6!函数
字符函数:
【】大小写转换 B##!(和 A!(
!!$%B##!(>>'(")
【】将雇员姓名变为开头字母大写,787%$C#
!!$%787%$C#'(")
字符函数中有连接函数 $8$C%,但不如 ??好用,还有字符串处理的一些函
数
字符串截取:
字符串长度:
内容替换:
!!$%
>>22-2>>2>>2>>2>
4>'(")
这里注意的是 中字符串截取从 @ 和从 开始都是一样的,谨防面试提
问
【-】要求显示所有雇员的姓名及姓名的后 - 个字符
!!$%2BD%(2!8K%;E'(")
以上操作显得较为麻烦,函数是可以倒着截取
!!$%2BD%(2E-2-'(")
数值函数:
、四舍五入:(B86
、截断小数位:%(B8$
-、取余取模:"6
!!$%(B86359+0-1'(")
【】保留 位小数2如果是E 则对整数进行四舍五入,变为 5@@ 了
!!$%(B8635-+012'(")
【】使用 "6函数进行取余操作
!!$%"6@2-'(")
日期函数:
、日期 E数字 J日期
、日期 M数字 J日期
-、日期 E日期 J数字天数
【】求出当前日期
!!$%6C%!'(")
提供了以下的日期函数支持:
"8%;GD!%A!!8:求出给定日期范围的月数
C66G"8%;:在指定日期上加上指定的月数,求出之后的日期
8!N%G6C:下一个的今天的日期
C%G6C:求出给定日期的最后一天日期
【】求出从雇用日期到今天所有雇员的雇员编号、姓名和月数
!!$%
22(B86"8%;GD!%A!!86C%!2'("
)
【-】验证 C66G"8%;、8!N%G6C、C%G6C
!!$%C66G"8%;6C%!2.'("6BC)
!!$%8!N%G6C6C%!2>"8>'("6BC)
!!$%C%G6C6C%!'("6BC)
转换函数:
、%G$;C(: 将日期或数值转换成字符串
、%G8B"D!(:将字符串转换成数字
-、%G6C%!: 将字符串转换成日期
【】将年月日进行分开,要指定拆分的通配符2 EE
!!$%22%G$;C(2> >
'(")
【】将薪水的数字进行格式化,>O992999>表示美元,>992999>表示当地
货币
!!$%22%G$;C(2>992999 '("
)
【-】%G8B"D!(验证
!!$%%G8B"D!(>->M%G8B"D!(>->'("6BC)
【.】%G6C%!验证,如下例子执行后显示为 E<BE
!!$%%G6C%!>@E3E>2> EE>'("6BC)
通用函数:
【】求出每个雇员的年薪应算上奖金
!!$%22M&'(")
由于 中有 8B28B 值计算后还是 8B2正确如下:
!!$%228L2@2M8L2@&
'(")
8L 可以理解为将 8B 值转换为具体的内容,这里是 @
【】6!$6!函数,该函数类似于 7'+++!!7'+++!!
语法如下:
6!$6!42选择 2结果 P,选择 ,结果 ,+++2默认Q
验证 6!$6!函数
!!$%222
6!$6!2>$!(=>2>业务员>2>C!"C8>2>销售人
员>2R"C8CK!(>2>经理>2>C8C%>2>分析员>2>#(!76!8%>2>总裁>
职位
'(")
SQL 简单语句练习:
【】找出佣金高于薪金的 1@F的员工
!!$%&'("A;!(!&@+1
【】找出部门 @ 中所有经理"C8CK!(和部门 @ 中所有办事员$!(=的
详细资料
!!$%&'("
A;!(!J@C86J>"C8CK!(>
(J@C86J>$!(=>)
【-】找出既不是经理又不是办事员但其薪金大于或等于 @@@ 的所有员工的资
料
!!$%&'("
A;!(!8%78>"C8CK!(>2>$!(=>C86J@@@)
剩余30页未读,继续阅读
资源评论
- 寻梦20162017-02-09很实用的东西,谢谢!
木子果果
- 粉丝: 13
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功