所以基本上我要做的是从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;
非常感谢任何帮助:)
答案 0 :(得分:0)
原来我在category_event中有一些行,它们指向事件中不存在的行的fk_event_id。
现在一切都很好:)