新年あけましておめでとうございます。
新年早々で恐縮ですが、以下の内容に困っています。アドバイスいただければ幸いです。
会員サイトを作っており、会員のみがサイト内でメッセージのやり取りを行えるようにと、メッセージデータを納めるテーブルを以下のようにいたしました。
テーブル名:message
message_no message_to_member_no message_from_member_no message_honbun
また、会員となるデータは以下のようになっております。
テーブル名:member
member_no member_id member_name ・・・・
メッセージテーブルにある、message_to_member_no、message_from_member_noは、memberのmember_noが入り、送信するときは、自身のnoが message_from_member_no に入り(対してmessage_to_member_noへは相手の no が入る)、受信時には自分のnoが message_to_member_no に入るという感じです。
ここで質問です。
上記messageテーブルを会員単位で呼び出す際、message_to_member_noまたはmessage_from_member_noに自分のnoが存在しるレコードを抽出することになりますが、どのようなSQL文になるのでしょうか?
今までやってみた結果は、「自分しか抽出できない」、または「すべて抽出できない」となっています。
お恥ずかしながらSQL文は以下の通りです。
$member_no = #_SESSION["member_no"];//自身の会員NO $query = "SELECT message.message_no, message.message_to_member_no, message.message_from_member_no, message.message_honbun, member.member_no, member.member_id, member.member_name FROM message LEFT JOIN member ON message.message_to_member_no = member.member_no OR message.message_from_member_no = member.member_no WHERE message.message_to_member_no = '$member_no' OR message.message_from_member_no = '$member_no' GROUP BY message.message_to_member_no, message.message_from_member_no ORDER BY message.message_no EDSC";
そもそもテーブルの構成が適切でない!などでも結構です。アドバイスのほど頂戴出来れば幸いです。
おやすみのところ恐縮ですが、よろしくお願いいたします。
追記:
説明が不十分でした。今回のSELECT文で抽出したいのは、メッセージを送信(または受信)してくれた会員一覧を表示したいと考えています。ご指導のほどよろしくお願いいたします。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/01/02 04:09