问题描述
存在如下的视图:
create view emp_v as select * from employees where emp_no >10005;
如何获取emp_v和employees有相同的数据?
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完成吗,挑战一下自己对视图的理解吧)
Sql语句
1、选择出employees中的emp_no与视图相等的全部的信息
注意:employees.*可不能写成*
select employees.*
from emp_v, employees
where employees.emp_no = emp_v.emp_no;
2、查找视图中全部数据
select *
from emp_v
3、使用intersect取交集
SELECT * FROM employees intersect SELECT * FROM emp_v