1

クエリを理解するのに苦労しています。会社 ID 列、comp_id、および名前列を含む COMPANY という 2 つのテーブルがあります。2 番目のテーブル SOURCE には、comp_id の列と、会社が販売する部品 (parts) の列があります。

すべての部品を製造している会社の名前を検索するクエリを作成するにはどうすればよいですか? これは存在しないステートメントを使用していると考えましたが、その方法がわかりません。

ありがとう。

4

5 に答える 5

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 に答える
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 に答える
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

company.comp_id=source.comp_id; の会社、ソースから名前を選択します。

于 2012-11-25T23:25:56.017 に答える