近日工作碰到一个PG error missing FROM-clause entry for table "t",这个错误基本上出现在选择列或者where语句后面引用了t2的表但是在from 后面并没有对应的表名。测试如下:
select t.* from dual;
select * from dual where t.id = ?
这类错误很好查清,找到对应的t,看下对应有没有表别名,如果没有,则加上,如下:
select t.* from dual t;
select * from dual t where t.id = ?;