我的查询是:SQL - AS - 表不存在 - 1146
SELECT temp.pid FROM
(SELECT postid, date FROM swapping AS s, post AS p
WHERE s.mid='2' AND p.postid=s.postid) AS temp
WHERE temp.date = (SELECT MAX(date) FROM temp)
我收到#1146 - 表 'databasename.temp' 不存在
我怎样才能使它工作? 谢谢。
您的回答非常有帮助。也许你知道我为什么查询错误? – lvil 2011-03-11 12:11:32
- 对于子查询SELECT MAX(date)FROM temp不存在表TEMP(别名在外,您必须从aRealTableOrQuery中选择MAX(date)) - temp.pid未定义。只有您在查询别名'temp'中选择的字段才可以通过temp.somefield进行选择。所以你的内部查询需要选择pid字段 - temp.date可能会给出错误,一些(所有?)数据库类型需要在这里使用原始别名(所以,s.date或p.date) – James 2011-03-11 19:50:12