您好,我有一个这样的查询:
SELECT otel_id
FROM YAZILIM_menu_icerik
WHERE YAZILIM_menu_icerik.menu_id = 39
AND otel_id IN (
SELECT otel_id
FROM YAZILIM_menu_icerik
WHERE menu_id =$id
ORDER BY RAND()
)
LIMIT 0,20
它应该在每次工作时随机显示 20 家酒店,但相反,我每次都会得到相同的 20 家酒店。长话短说RAND()
似乎不起作用,我似乎找不到任何逻辑错误。
编辑:问题解决了。Mysql 看不到内部 RAND() 所以这是正确的方法:
SELECT otel_id
FROM YAZILIM_menu_icerik
WHERE YAZILIM_menu_icerik.menu_id = 39
AND otel_id IN (
SELECT otel_id
FROM YAZILIM_menu_icerik
WHERE menu_id =$id
)
ORDER BY RAND()
LIMIT 0,20