thinkphp5 query 执行bug

浏览:1771 发布日期:2017/08/16
5.0.0 - 致命 - 未处理
如果按以下方式去获取特定条件下(hours=14)随机行会返回错误的数据,返回行的id字段和其他字段不是同一行的数据,而在数据库直接执行该语句则正常
$Model->query('
SELECT *
FROM `table` AS t1
JOIN (SELECT ROUND(RAND() * ((SELECT MAX(id) FROM `table`)-(SELECT MIN(id) FROM `table`))+(SELECT MIN(id) FROM `table`)) AS id) AS t2
WHERE t1.id >= t2.id and hours =14
ORDER BY t1.id LIMIT 1');
如果不加条件就正常
评论(
后面还有条评论,点击查看>>