这几天面试,给到一个复杂的SQL查询,觉的很有意思。
第一题:有三个SQL表,分别叫WORK, USER, MANAGER,
定义如下:
WORK –work_id –user_id –work_name
USER –user_id –team
MANAGER –manager_id –team用SQL列出某个manager的team中的所有user的所有work_name
花了一点时间,我写出了一个初步的查询语句,如下
select work_name from work,
(select user_id from manager m,user u where manager_id=2 and m.team = u.team ) r
where r.user_id = work.user_id;