さまざまなユーザー情報を取得するために、異なる列で同じテーブルを 2 回結合する
このクエリは、opened_by 列と Closed_by 列の両方のユーザー名を取得することを目的としています。苦情テーブル。ユーザーはユーザー テーブルに保存されます。課題は、異なる列を使用してユーザー テーブルを複数回結合することにあります。
このタスクを達成するには、ユーザー テーブルのインスタンスごとに LEFT JOIN 操作を使用し、わかりやすくするために結合テーブルに A および B というエイリアスを付けます。クエリは次のように処理されます:
SELECT complaint.complaint_text, A.username, B.username FROM complaint LEFT JOIN user A ON A.user_id=complaint.opened_by LEFT JOIN user B ON B.user_id=complaint.closed_by
このクエリでは、最初に苦情テーブルからimplaint_text列を選択し、opened_by列とclosed_by列の両方についてuserテーブルからユーザー名を選択します。
次に、LEFT JOIN を使用して、opened_by 列に基づいて苦情テーブルを user テーブルと結合します。これにより、complaint.opened_by の user_id を user テーブルの user_id と照合し、対応するユーザー名を取得できます。結合されたテーブルに A.
というエイリアスを付けます。次に、closed_by 列に基づいて、苦情テーブルとユーザー テーブルの間で別の LEFT JOIN 操作を実行します。この結合テーブルに B という別名を付けます。
このクエリの結果には、苦情の詳細と、苦情申し立て者と解決済みの列の両方のユーザー名が明確に表示されます。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3