0

私はSQL初心者です。ごめん。私は3つのテーブルを持っています:services、citys、city_services。特定の都市で利用可能なすべてのサービスを(city_idを使用して)city_servicesテーブルから取得する必要がありますが、サービステーブルからサービス名を取得する必要もあります-すべて1つのステートメントで。2つのステートメントと2つのwhileループ(php)をネストできることは知っていますが、それは非効率的なようです。

JOINまたはネストされたSQLステートメントが必要ですか?私はこれに頭を包むことができません。

助けや正しい方向を指すことは素晴らしいことです!

ありがとう。

sndwg

4

1 に答える 1

2

はい、結合を使用します。例えば:

SELECT service.name, city_service.id
FROM City_Services AS city_service
INNER JOIN Services As service ON city_service.service_id = service.service_id
WHERE city_service.city_id = ?

(を指定する方法はcity_id、データベースとそれにアクセスする方法によって異なります。上記の例では、名前のないパラメーターを使用してパラメーター化されたクエリを使用していると想定しています。)

于 2011-01-07T07:08:09.743 に答える