MySQL:连接两个表的问题

时间:2013-07-31 14:22:05

标签: mysql

所以基本上我要做的是从category_event表中选择5个随机行,然后将category_event表中的fk_event_id与events表中的id匹配,最后通过start_time从事件中排序5个随机行表。

我在category_event表中有25行,其中fk_category_id = 2,但是当我运行查询时,它有时返回5行,下次4行,下次5行,下次3行等等。每次应该是5行时间...

这就是我目前所拥有的:

SELECT * FROM 
(
   SELECT fk_event_id 
   FROM category_event 
   WHERE fk_category_id=2 AND status = 'enabled' 
   ORDER BY RAND() LIMIT 5
) c 
INNER JOIN events e 
ON e.id = c.fk_event_id 
ORDER BY e.start_time;

非常感谢任何帮助:)

1 个答案:

答案 0 :(得分:0)

原来我在category_event中有一些行,它们指向事件中不存在的行的fk_event_id。

现在一切都很好:)