SQL47 如何获取emp_v和employees有相同的数据

本文最后更新于:2022年4月9日 中午


题目描述

存在如下的视图:

1
create view emp_v as select * from employees where emp_no >10005;

如何获取emp_v和employees有相同的数据?

1
2
3
4
5
6
7
8
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`));

(你能不用 select * from employees where emp_no >10005完成吗,挑战一下自己对视图的理解吧)

输出格式:

emp_no birth_date first_name last_name gender hire_date
10006 1953-04-20 Anneke Preusig F 1989-06-02
10007 1957-05-23 Tzvetan Zielinski F 1989-02-10
10008 1958-02-19 Saniya Kalloufi M 1994-09-15
10009 1952-04-19 Sumant Peac F 1985-02-18
10010 1963-06-01 Duangkaew Piveteau F 1989-08-24
10011 1953-11-07 Mary Sluis F 1990-01-22

输入描述

输出描述

题解

1
2
3
4
select em.* from employees as em, emp_v as ev
where em.emp_no=ev.emp_no;

SELECT * FROM emp_v;

备注:

  1. 由于视图中的数据全都从 employees 中导出,更直接的方法就是输出视图。