1

我在找出查询时遇到了一些麻烦。我有 2 个表 COMPANY,其中包含一个公司 ID 列、comp_id 和一个名称列。第二个表 SOURCE 有一列是 comp_id,一列是公司销售的零件,parts。

如何编写查询以查找生产所有零件的公司的名称?我认为这使用了不存在的语句,但我不知道如何。

谢谢。

4

5 回答 5

1
Select name
from company, source
where company.comp_id=source.comp_id;
于 2012-11-25T23:22:46.137 回答
1

尝试这个...

SELECT c.name from company join source s on (s.comp_id = c.comp_id) where parts = [:part_id];
于 2012-11-25T23:23:38.413 回答
1
SELECT name, count(*) AS parts_count
FROM company, source
WHERE company.comp_id = source.comp_id
GROUP BY name
HAVING parts_count = (select count(*) from source)
于 2012-12-09T23:56:19.510 回答
0

很简单和命令,假设一个部分是“875”

SELECT name FROM company WHERE comp_id IN(SELECT comp_id FROM parts
WHERE parts = 875)

这允许您在不同的公司中拥有相同的部分

于 2012-11-25T23:22:27.440 回答
0

从公司中选择名称,source where Companies.comp_id=source.comp_id;

于 2012-11-25T23:25:56.017 回答