我需要做一个选择以找出X
然后我需要用X来找出Y
然后我需要用Y来找出Z
有没有办法用一个“自动参数化选择”来制作它?
像这样的fanta-pseudo-code:select Z from ( select Y from (select X from x_table) )
tnx很多!
答案 0 :(得分:1)
是的,绝对的。例如:
select cnt, count(*) from
( select department_id, count(*) as cnt
from employees
group by department_id
)
group by cnt;
这给出了“计数数”。
或许你的意思是更像这样的东西,这也是有效的:
select emp_name
from employees
where department_id in
( select department_id
from departments
where location_id in
( select location_id from locations
where country = 'US'
)
);
答案 1 :(得分:0)
可以使用子选择,就像你在那里描述的那样。您使用的是什么数据库服务器?你能更具体地了解你的疑问吗?
答案 2 :(得分:0)
这是一个深度示例,试图在同一个县找到所有“公寓社区”,而不是另一个属性。
从RMPROP INNER JOIN选择ZipCode.countyname AS“县名”ZipCode ON RMPROP.ZIP = ZIPCODE.ZIPCODE WHERE INACTIVE ='N'和 ZIP IN(从邮政编码中选择邮政编码,其中(COUNTYNAME + STATEABBR)IN(从zipcode中选择countyname + stateabbr,其中zipcode =(SELECT Zip FROM RMPROP WHERE RMPROPID ='113')))
将其视为为您需要查找的第一组数据构建select语句,在该语句周围加上括号,然后查询它是否为FROM子句中的表。