0

我的数据库中有 3 个表,tbl_user、tbl_games 和 tbl_usergames。

tbl_user 有 id 和 name。

tbl_games 有 id 和 name。

tbl_usergames 具有 id_user 和 id_game 并将 tbl_user 链接到 tbl_games

我想进行搜索以返回具有名称与搜索字符串匹配的任何游戏的用户。

SELECT tbl_user.*
FROM tbl_user, tbl_usergames 
WHERE tbl_user.id IN (
 **SELECT id
 FROM tbl_games
 WHERE name LIKE '%Mario%'**
)

我试过了,但它返回 0 个结果。

4

1 回答 1

1
SELECT u.*
FROM tbl_user u
JOIN tbl_usergames ug ON (u.id = ug.id_user)
JOIN tbl_games g ON (ug.id_game = g.id)
WHERE
    g.name LIKE '%Mario%'

您需要加入两个表。

于 2013-03-18T18:45:50.087 回答