未加select后面的查询条件时不报错,能正常查询出数据
SELECT * FROM emp e1,emp e2,dept d WHERE e1.topid=e2.id AND e1.dept_id=d.id HAVING e1.hdate<e2.hdate;
加上条件后就报错
SELECT e1.name FROM emp e1,emp e2,dept d WHERE e1.topid=e2.id AND e1.dept_id=d.id HAVING e1.hdate<e2.hdate;
不明白这是什么原因导致的。
改成:
SELECT e1.name FROM emp e1,emp e2,dept d
WHERE e1.topid=e2.id AND e1.dept_id=d.id and e1.hdate<e2.hdate;
emp表中没有hdate字段,检查一下是否写错了。