Sql select查询是如何工作的?
我对这个问题有疑问 天气很好,但我看不清 这个select语句是如何工作的。 如果您对这个问题有任何帮助或解释,我们将不胜感激。。 非常感谢。 这些是我的表和查询 我在这里寻找和他们工作的公司住在同一个城市的员工 表:环境管理计划Sql select查询是如何工作的?,sql,select,database,Sql,Select,Database,我对这个问题有疑问 天气很好,但我看不清 这个select语句是如何工作的。 如果您对这个问题有任何帮助或解释,我们将不胜感激。。 非常感谢。 这些是我的表和查询 我在这里寻找和他们工作的公司住在同一个城市的员工 表:环境管理计划 eid name street city ----------- ---------------- ------------- ------------ 1 yeman a
eid name street city
----------- ---------------- ------------- ------------
1 yeman asd vasai
2 aksh adssd mumbai
3 chintan ghfgh mumbai
4 samual ghfdgh bandra
5 ddlj fghfgh andheri
6 jack fghnfg Bandra
7 bridge gfhfgh vasai
8 rahim ghfgh mumbai
9 chirag fghfghfg bandra
10 mistry hhhty bandra
11 ravi tytey andheri
表:公司
cid companyname city
----------- ------------------- ------------
1 Vasai Industries vasai
2 Mumbai Pharmacy mumbai
3 bandra loft bandra
4 andheri tactics andheri
表:=工程
eid cid salary
----------- ----------- -----------
1 1 200
2 3 4831
3 4 4457
4 2 20001
5 1 32221
6 2 224
7 3 784
8 1 336
9 3 2489
10 2 4789
11 1 22541
质疑
说明: 1.
从city=emp.city的公司选择cid
在这里,您可以获得有关emp和公司中相同城市的城市id
二,
在这里,您可以从works表中获取id集合,该表的cid在emp和company中是相同的
三,
这里您将获得基于emp id的所有记录,这些记录的城市在emp和city中是相同的说明: 1.
从city=emp.city的公司选择cid
在这里,您可以获得有关emp和公司中相同城市的城市id
二,
在这里,您可以从works表中获取id集合,该表的cid在emp和company中是相同的
三,
在这里,您将获得基于emp id的所有记录,这些记录的城市在emp和city中是相同的,为什么不将此查询与联接一起使用呢?它很容易理解,然后是一组子查询
select * from emp
inner join works on works.eid = emp.eid
inner join company on company.city=emp.city
为什么不将这个查询与连接一起使用呢?它很容易理解,然后是一堆子查询
select * from emp
inner join works on works.eid = emp.eid
inner join company on company.city=emp.city
尝试分别执行每个子查询,您将了解每个子查询的结果以及它们放置的位置。编写此查询的人需要了解连接。实际上,我正在使用嵌套选择查询…它们总是让我大吃一惊。@BurhanKhalid:连接不一定要替换IN中的
查询尤其不是在1:n关系中,因为这是公司和工作之间的关系。尝试分别执行每个子查询,您将了解每个子查询的结果以及它们放置在各自位置上的位置。编写此查询的人需要了解连接。实际上,我正在使用嵌套选择查询……他们总是让我大吃一惊off.@BurhanKhalid:JOIN不一定是
查询中的的替代品。尤其不是在公司和工厂之间的1:n关系中
select * from emp
where eid
IN (select eid from works
where cid=(select cid from company
where city=emp.city))
select * from emp
inner join works on works.eid = emp.eid
inner join company on company.city=emp.city