0
内部結合に問題があります。内部結合を使用してテーブルを結合する前に、テーブルをフィルタリングする必要があります。次のコードはもちろん間違っていますが、私はこのようなものが必要です。助けてください。INNER JOIN選択時
SELECT * FROM hotel LEFT OUTER JOIN (**hotel_table where hotel_table.id_offer=$id**) ON (hotel.id = hotel_table.id_hotel)
編集:速い答えを
感謝。 「すべての派生テーブルは、独自の別名を持っている必要があります」マイコード:私はこの問題を解決するにはどうすればよい
SELECT *
FROM
czajka_zakwaterowania
LEFT OUTER JOIN
(
SELECT *
FROM czajka_hotel_l
WHERE czajka_hotel_l.id_hotel=$id
)
ON (czajka_zakwaterowania.id = czajka_hotel_l.id_hotel)
しかし、私はエラーを取得しますか?
このコードでは、「すべての派生テーブルには別のエイリアスが必要です」というエラーが表示されます。削除できません。
GBNの答えで再度確認してください。派生テーブルの ")"と "ON"の間に名前がありません。 –
最後の2行をこれに変更してください: ')CZAJKA_HOTEL_L ON(czajka_zakwaterowania.id = czajka_hotel_l.id_hotel)'。あなたが見ることができるように、私は ')'と 'ON'の間に** czajka_hotel_l **を追加しました。このようにして、派生テーブルに別名を与えました。 gbnはこれも彼の答えで行いましたが、あなたはそれを忘れました。 –