0

私は2つのMysqlテーブルを持っています:

A (ユーザー テーブル):

id ユーザー名 ルーム

1    User1    1 
2    User2    1
3    User3    1

B (ブロックされたユーザー):

id   username
1    User3

私のリクエストはここにあります(User3がブロックされているため、User1とUser2を取得したいと思います):

SELECT A.id, A.username FROM `table1` A, `table2` B 
  WHERE A.roomid = 1 AND A.username != B.username

しかし、これは間違った要求です。ありがとう!

4

3 に答える 3

0

表 A の ID とは何ですか? ユーザー名のIDですか?
表 B の ID は何を意味しますか?

予想される出力を取得するには、SQL結合を使用する必要があります。ただし、それを行うには、両方のテーブルに共通のキーが必要です。あなたのテーブルの例によると、IDは共通キーではなく、それを使用するだけだと思います。しかし、私が間違っていれば、IDを共通キーとして取得しながら、内部結合を使用して2つのテーブルを結合できます。

于 2013-08-01T07:05:26.583 に答える
0
SELECT A.id, A.username,B.id,B.username FROM `table1` A, `table2` B
WHERE A.roomid = 1 AND A.username != B.username
于 2013-08-01T06:01:55.863 に答える
0

join2つのテーブルA&Bのいずれかが必要です

SELECT A.id, A.username FROM `table1` A
JOIN `table2` as B ON `table1`.id = `table2`.id
WHERE A.room = 1 AND A.username != B.username

ORあなたの列名は似てroomいませんroomid

SELECT A.id, A.username FROM `table1` A, `table2` B 
WHERE A.room = 1 AND A.username != B.username
于 2013-08-01T06:00:51.173 に答える