2013-03-18 48 views
0

我在我的数据库中有3个表,tbl_user,tbl_games和tbl_usergames。MySQL搜索文本和链接表

tbl_user有id和名称。

tbl_games有ID和名称。

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个结果。

+0

http://www.w3schools.com/sql/default.asp – Sebas 2013-03-18 18:19:53

+0

@Sebas w3fools.com – Kermit 2013-03-18 18:21:19

+0

是的,也许。我认为你有点生气。我的这个评论的目的是指出OP正确学习SQL的必要性,并提到一个友好教程的例子。 – Sebas 2013-03-18 18:24:36

回答

0
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%' 

你需要加入对表。

+0

非常感谢 – 2013-03-18 19:41:43