困难的SQL查询

时间:2011-09-13 20:55:24

标签: php mysql sql

我有2个表,即表1呼叫游戏,表2呼叫game_medias

结构表1(游戏)

-id
-genre_id
-title
-created

结构表2(game_medias)

-id
-game_id
-thumb

示例查询:

select g.id,g.genre_id,g.title, gm.* 
from games g inner join game_medias as gm 
group by rand(g.id) limit 8;

是否可以使用额外的“g.id ='2'”进行查询 - 从中​​获取genre_id并使用此genre_id进入随机8个“项目”?我不确定加入是否是正确的解决方案 - 也许有人知道更好的方法?

问候

1 个答案:

答案 0 :(得分:0)

有很多方法可以做到这一点,但我相信这会有效:

select g.id,g.genre_id,g.title, gm.* 
from games g inner join game_medias as gm 
where (g.genre_id = (SELECT genre_id FROM games WHERE id = 2))
group by rand(g.id) limit 8;

如果games.id上有索引,那么它应该非常快。