メンバーレコードのリストを表示しようとしています。私が必要とするものを表示するために使用しているテーブルがいくつかあります。MySQLサブクエリ - LEFT JOINの最初のレコードのみを検索する
これは簡単な部分です。私が必要とするのは、各メンバーレコードのレコードが多いテーブルです。ログイン履歴
ログイン履歴テーブルにある各メンバーレコードの最初の行のみを表示します。また、フロップをフリップしてログイン履歴テーブルの最後のレコードを表示することもできます。期待されているものを返し
SELECT m.memberid, m.membername, m.gender, mp.phone
FROM tbl_members m,
tbl_members_phones mp,
tbl_members_addresses ma
WHERE m.defaultphoneid = mp.phoneid
AND m.defaultaddressid = ma.addressid
ので:こちらを
は、私がこれまで持っているものです。
2列tbl_members_login_history
返された結果に追加したいのですが:mh。 loggedtime
、mh。 ipaddy
私はLEFTとしてtbl_members_login_history
を追加することを知っているが、重複を返すのJOINので、私はtbl_members_login_history
に存在することをmemberid
のためのちょうど第一のレコードを返すために、ここでのサブクエリの必要がなければならないと思っています。
私が心配しているのは、履歴テーブルのレコードが存在しない場合でも、そのメンバー情報を表示したいが、履歴列はNULLのままにしておくことです。
これはサブクエリインシデントですか?もしそうなら、そのタイプのLIMITをどのように追加しますか?
メンバーは電話番号と住所が必要ですか?もしそうでなければ、あなたの質問が書かれている方法が欠けている場合、あなたの質問は他のメンバー情報を返すとは思わない。 – Sam
この場合、はい。しかし、あなたが正しいです、メンバーは、既存のレコードなしで結果に返されません。 – coffeemonitor