0
すべてのメッセージをすべてのユーザーから、ユーザーがいる2つのグループから取得しようとしています。しかし、私はどのグループからどのようにすべてのメッセージを得るのか分かりません。これまでのコードです:Sqlクエリこの1人のユーザーがいるすべてのグループ内のすべてのメッセージを選択
SELECT DISTINCT m.*
FROM `message` m
INNER JOIN users u
ON u.id = m.idUser
LEFT JOIN whats_app w
ON w.idUser= u.id
WHERE u.id = w.idUser
したがって、2つのグループに1人のユーザーしかいません。 ONEユーザーがいるグループ内の全員からすべてのメッセージを受け取ることはできません。
これはいくつかの単純なSQLクエリのALSの例である:
create table users (
id int PRIMARY KEY NOT NULL,
name varchar(60)
);
create table whatsapp(
idUser ,
idGroup int
);
create table allGroups(
id int PRIMARY KEY NOT NULL,
name varchar(60)
);
create table message_send(
id int,
idUser int,
message text
);
INSERT INTO users(id, name) VALUES
(1, 'John'),
(2, 'Martijn'),
(3, 'Rick'),
(4, 'Vera'),
(5, 'Leon');
INSERT INTO allGroups(id, name) VALUES
(1, 'School'),
(2, 'Friends'),
(3, 'moreFriends'),
(4, 'secretmeeting');
INSERT INTO message_send(id, idUser, message) VALUES
(1, 2, 'How are you feeling today?'),
(2, 1, 'What up?'),
(3, 4, 'I am fine, you?'),
(4, 1, 'hi!');
編集あなたの質問に参加し、サンプルデータを提供し、希望します結果。 –
私はあなたの質問があなたが1つの地区のすべてのユーザーを取得し、これらのユーザーがいるすべての地区を取得したいと思うかどうか分かりませんか? –
あなたの予想される出力は?質問がはっきりしない – Minisha