我遇到了PostgreSQL查询令人头痛的问题。这部作品在我的本地开发环境:PostgreSQL DISTINCT问题:在本地工作,但不在服务器上
SELECT distinct (user_id) user_id, created_at, is_goodday
FROM table
WHERE ((created_at >= '2011-07-01 00:00:00') AND user_id = 95
AND (created_at < '2011-08-01 00:00:00'))
ORDER BY user_id, created_at ASC;
...但给我的QA服务器上下面的错误(这是在Heroku):
PGError: ERROR: syntax error at or near "user_id"
LINE 1: SELECT distinct (user_id) user_id, created_at,
^
为什么会这样?
其他可能相关的信息:
我曾尝试单引号和双引号的字段名称
这是一个Rails 3应用程序,但我使用这个SQL原料,即没有ActiveRecord的魔法
我的Postgres的本地版本9.0.4在Mac上,但我不知道是什么版本的Heroku使用
我只是试图选择按user_id分组的给定日期的所有条目(每个user_id有多个条目;我需要最新的条目)。它的MySQL版本(我认为)就像select_ from table group by user_id一样,但我被告知Postgres不允许每个SQL遵从(并且无论如何,MySQL方式并不能保证唯一user_id实际上是最近的一个) – yalestar