我在查找查询时遇到了一些麻烦。我有2个表,COMPANY,其中包含公司ID列,comp_id和名称列。第二个表,SOURCE,有一个comp_id列和一个公司销售零件的列,部分。
如何编写查询以查找生产所有零件的公司名称?我认为这使用不存在的语句,但我无法弄清楚如何。
感谢。
答案 0 :(得分:1)
Select name
from company, source
where company.comp_id=source.comp_id;
答案 1 :(得分:1)
试试这个......
SELECT c.name from company join source s on (s.comp_id = c.comp_id) where parts = [:part_id];
答案 2 :(得分: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)
答案 3 :(得分:0)
非常简单和命令,假设一个部分是“875”
SELECT name FROM company WHERE comp_id IN(SELECT comp_id FROM parts
WHERE parts = 875)
这允许你在不同的公司中拥有相同的部分
答案 4 :(得分:0)
从公司中选择名称,来自companies.comp_id = source.comp_id;
的来源