4つのテーブルを結合しようとしています。私のクエリはうまくいかないようです。私がしたいのは、2016年以前に借りた人の電子メールアドレスをすべて見つけることです。私たちのデータベース構造は変更されているので、テーブルパッケージに参加する必要があります。4つのテーブルを結合するSQL
- のuser_id
- 活動
- メールここ
私のコードです::すべてのヘルプは
SELECT
u.id,
activities,
Max(DATE_PART('year', b.created_at)),
u.email
FROM boats bts
INNER JOIN packages p ON p.boat_id = bts.id
INNER JOIN bookings b ON b.package_id = p.id
INNER JOIN users u ON u.booking_id = b.id
WHERE b.created_at BETWEEN '2013-01-01' AND '2015-12-30'
GROUP BY u.id, activities
LIMIT 100;
を高く評価しているが、私は、次の列が出力されるようにしたいです。
INNER JOINをユーザU ON p.boat_id = bts.id ...この行が問題になります。..彼らは右の列に加わっていますか?また、テーブル構造は何ですか?また、ursの現在の出力は何ですか? – DriLLFreAK100
詳細については 'クエリーは動作していないようです 'と説明してください。どのようなDB構造、どの出力が得られ、どの出力が期待されるか – Justinas
ユーザーテーブルは他のテーブルにマップされていません。あなたは正しい結果を得られません。すべての4つのテーブルのDB構造を共有します。 –