一般都是在编写mysql多个表查询的时候会出现,
SELECT `id`,`title`
FROM `dede_archives` AS t1 JOIN (SELECT ROUND(RAND() * (SELECT MAX(id) FROM `dede_archives`)) AS id) AS t2
WHERE t1.id >= t2.id
ORDER BY t1.id ASC LIMIT 10
像这个就会出现以上错误,是因为你查询语句里面有id字段的时候,没有说明是哪个表的id字段,应该加上表名(或者别名)来区分。
用表名进行区分的例子:
select student.id, student.name, score.total
from student, score
where student.id = score.id