0

如何创建一个包含来自 2 个不同表的 SELECT 语句的 sql 命令?例如,

select ID from EMP_details, select job_id from Jobs_details

那么我怎么可能将两者合二为一

4

4 回答 4

3

从两个或多个表中选择当表中的行具有某种关系时,您想要提取相应的行,您将使用类似这样的 JOIN ....
JOIN

SELECT EMP.ID, JD.job_id
FROM EMP_details EMP  INNER JOIN jobs_details JD 
ON EMP.CommonColumn = JD.CommonColumn 

来自两个 SELECT 的结果
当您有两个 SELECT 语句并且只想将它们返回的结果查询到一行时,您可以执行以下操作...

SELECT X.A , Y.B
FROM (select ID AS A from EMP_details) X, (select job_id AS B from Jobs_details) Y
于 2013-11-03T18:01:13.060 回答
1

你有没有尝试

SELECT id FROM (SELECT id FROM EMP_details UNION ALL SELECT id FROM Jobs_details) as temp_table;

谢谢,

于 2013-11-03T19:26:20.297 回答
1

这在 SQL 中称为 JOIN。您的查询可能如下所示:

SELECT EMP_details.ID,
       EMP_details.Name,
       Job_details.RefNumber
FROM   EMP_details,
       Jobs_details
WHERE  EMP_details.ID = Jobs_details.job_id; 
于 2013-11-03T17:48:32.350 回答
1

在两个表中都有一个列,您可以通过该列将第一个表中的行匹配到第二个表中,例如 Jobs_details 中的 job_id 与 Emp_details 中的 job_id 匹配,您可以执行以下操作:

SELECT e.ID,j.job_id
FROM EMP_details e
INNER JOIN jobs_details j ON e.job_id = j.job_id

有关 JOIN 的更多信息,请参阅文档

于 2013-11-03T17:50:57.590 回答