数据库操作练习9
来源:互联网 发布:中科院人工智能 编辑:程序博客网 时间:2024/05/16 08:11
1. 将所有获取奖金的员工当前的薪水增加10%
题目描述
将所有获取奖金的员工当前的薪水增加10%。
create table emp_bonus(
emp_no int not null,
recevied datetime not null,
btype smallint not null);
CREATE TABLE `salaries` (
`emp_no` int(11) NOT NULL,
`salary` int(11) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`from_date`));
create table emp_bonus(
emp_no int not null,
recevied datetime not null,
btype smallint not null);
CREATE TABLE `salaries` (
`emp_no` int(11) NOT NULL,
`salary` int(11) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`from_date`));
update salaries set salary=salary+salary*0.1 where emp_no in (select emp_no from emp_bonus) and to_date='9999-01-01'
sql2:
update salaries set salary=salary*1.1 where emp_no in
(select sa.emp_no from salaries sa inner join emp_bonus em on sa.emp_no=em.emp_no and sa.to_date='9999-01-01')
2. 获取所有员工的emp_no
题目描述
获取所有员工的emp_no、部门编号dept_no以及对应的bonus类型btype和recevied,没有分配具体的员工不显示
CREATE TABLE `dept_emp` ( `emp_no` int(11) NOT NULL,
`dept_no` char(4) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL,
PRIMARY KEY (`emp_no`,`dept_no`));
CREATE TABLE `dept_manager` (
`dept_no` char(4) NOT NULL,
`emp_no` int(11) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL,
PRIMARY KEY (`emp_no`,`dept_no`));
CREATE TABLE `employees` (
`emp_no` int(11) NOT NULL,
`birth_date` date NOT NULL,
`first_name` varchar(14) NOT NULL,
`last_name` varchar(16) NOT NULL,
`gender` char(1) NOT NULL,
`hire_date` date NOT NULL,
PRIMARY KEY (`emp_no`));
CREATE TABLE `salaries` (
`emp_no` int(11) NOT NULL,
`salary` int(11) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL,
PRIMARY KEY (`emp_no`,`from_date`));
输出格式:
e.emp_no dept_no btype recevied 10001d00112010-01-0110002d00122010-10-0110003d00432011-12-0310004d00412010-01-0110005d003 10006d002 10007d005 10008d005 10009d006 10010d005 10010d006
CREATE TABLE `dept_emp` ( `emp_no` int(11) NOT NULL,
`dept_no` char(4) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL,
PRIMARY KEY (`emp_no`,`dept_no`));
CREATE TABLE `dept_manager` (
`dept_no` char(4) NOT NULL,
`emp_no` int(11) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL,
PRIMARY KEY (`emp_no`,`dept_no`));
CREATE TABLE `employees` (
`emp_no` int(11) NOT NULL,
`birth_date` date NOT NULL,
`first_name` varchar(14) NOT NULL,
`last_name` varchar(16) NOT NULL,
`gender` char(1) NOT NULL,
`hire_date` date NOT NULL,
PRIMARY KEY (`emp_no`));
CREATE TABLE `salaries` (
`emp_no` int(11) NOT NULL,
`salary` int(11) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL,
PRIMARY KEY (`emp_no`,`from_date`));
输出格式:
select e.emp_no,e.dept_no,em.btype,em.recevied from dept_emp e left join emp_bonus em on e.emp_no=em.emp_no
3. 将employees表的所有员工的last_name和first_name拼接起来作为Name,中间以一个空格区分
题目描述
将employees表的所有员工的last_name和first_name拼接起来作为Name,中间以一个空格区分
CREATE TABLE `employees` ( `emp_no` int(11) NOT NULL,
`birth_date` date NOT NULL,
`first_name` varchar(14) NOT NULL,
`last_name` varchar(16) NOT NULL,
`gender` char(1) NOT NULL,
`hire_date` date NOT NULL,
PRIMARY KEY (`emp_no`));
CREATE TABLE `employees` ( `emp_no` int(11) NOT NULL,
`birth_date` date NOT NULL,
`first_name` varchar(14) NOT NULL,
`last_name` varchar(16) NOT NULL,
`gender` char(1) NOT NULL,
`hire_date` date NOT NULL,
PRIMARY KEY (`emp_no`));
输入描述:
无
输出描述:
Name Facello GeorgiSimmel BezalelBamford PartoKoblick ChirstianMaliniak KyoichiPreusig AnnekeZielinski TzvetanKalloufi SaniyaPeac SumantPiveteau DuangkaewSluis Mary
这题用CONCAT(last_name,' ',first_name )始终通不过,由于concat函数来只支持MySQL、SQL Server、Oracle等数据库,SQLite数据库连接字符串要用连接符号"||"
select last_name||' '||first_name as Name from employees
阅读全文
0 0
- 数据库操作练习9
- Orcale数据库操作练习
- JavaDB数据库操作练习
- 数据库操作练习1
- 数据库操作练习2
- 数据库操作练习3
- 数据库操作练习4
- 数据库操作练习5
- 数据库操作练习6
- 数据库操作练习7
- 数据库操作练习8
- 数据库操作练习10
- 数据库操作练习11
- 数据库操作练习12
- 数据库操作练习13
- Android简单数据库操作练习
- MySql数据库基本操作练习
- python操作mysql数据库练习
- RK3229方案测评 RK3299方案设计定制 RK3299方案开发板 RK3229智能音响
- XML组装解析的困扰小问题
- Maven项目Java Resource 出现红叉
- 前端插件之滚动轮播
- Linux平台上配置Oracle ASMLib和磁盘多路径
- 数据库操作练习9
- map按key排序并转化成urlKeyValue字符串形式
- 肝脏健康信息
- 不得不看!史上最全的三十多张架构师图谱!
- CCF 日期计算(Java)
- Pytorch入门——神经网络
- 11 java里的多线程
- XtraBackup
- prototype 与 __proto__