MySQL_day02_02(习题-SQL基本查询操作)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SQL简单查询练习题
一、表结构说明
1.雇员表(emp)
2.部门表(dept)
3.工资等级表 (salgrade)
4.奖金表 (bonus)
二、SQL脚本
source执行scott_for_mysql.sql
三、SQL基本查询操作
1.选择部门30中的所有员工.
2.列出所有办事员(工作职位)(CLERK)的姓名,编号和部门编号.
3.找出佣金高于薪金的员工.
4.找出佣金高于薪金的60%的员工.
5.找出部门10中所有经理(MANAGER)和部门20中所有办事员(CLERK)的详细资料.
6.找出部门10中所有经理(MANAGER),部门20中所有办事员(CLERK),既不是经理又
不是办事员但其薪金大于或等于2000的所有员工的详细资料.
7.找出收取佣金的员工的不同工作.
8.找出不收取佣金(奖金)NULL或收取的佣金低于100的员工.
9.找出各月倒数第3天受雇的所有员工.//函数
10.找出早于12年前受雇的员工.//日期返回年份
11.以首字母大写的方式显示所有员工的姓名.
12.显示正好为5个字符的员工的姓名.
13.显示不带有"R"的员工的姓名.
14.显示所有员工姓名的前三个字符.
15.显示所有员工的姓名,用a替换所有"A"//函数
16.显示满10年服务年限的员工的姓名和受雇日期.
17.显示员工的详细资料,按姓名排序.
18.显示员工的姓名和受雇日期,根据其服务年限,将最老的员工排在最前面.
19.显示所有员工的姓名、工作和薪金,按工作的降序排序,若工作相同则按薪金排序.
20.显示所有员工的姓名、加入公司的年份和月份,按受雇日期所在月排序,若月份相同
则将最早年份的员工排在最前面.
21.显示在一个月为30天的情况所有员工的日薪金,忽略余数.
22.找出在(任何年份的)2月受聘的所有员工.
23.对于每个员工,显示其加入公司的天数.
24.显示姓名字段的任何位置包含"A"的所有员工的姓名.
SQL综合操作
一、表结构说明
现有一个商店的数据库,记录顾客及其购物情况,由下面三个表组成:
1.商店表(product)
2.顾客表(customer)
3.购买表(purcase)
二、试用SQL语言完成下列功能
1.建表
●在定义中要求声明:
每个表的主外键
顾客的姓名和商品名不能为空值
单价必须大于0,购买数量必须在0到20之间
◆MySQL不支持check,但是可以在语句中使用check
2.往表中插入数据
顾客表(customer)
购买表(purcase)
●数据说明:
商品有9 条,顾客有5条,购买有14条
3.用SQL语句完成下列查询:
●求购买了供应商"宝洁"产品的所有顾客
●求购买的商品包含了顾客"Dennis"所购买的所有商品的顾客(姓名)●求牙膏卖出数量最多的供应商
●将所有的牙膏商品单价增加10%
●删除从未被购买的商品记录