Postgresql Sybase和Postgres之间存在差异

Postgresql Sybase和Postgres之间存在差异,postgresql,postgresql-9.1,Postgresql,Postgresql 9.1,以下查询在Sybase SQL中工作:- select id, version from local_tbl group by id having version < max(version) 我无法将该版本放入组中,因为我希望所有版本都具有id 我怎样才能做到同样的效果呢?试试: SELECT id, version FROM ( select id, version, max(version) OVER (PARTI

以下查询在Sybase SQL中工作:-

select id, version from local_tbl
group by id
having version < max(version)
我无法将该版本放入组中,因为我希望所有版本都具有id

我怎样才能做到同样的效果呢?

试试:

SELECT id, version
FROM (
      select id, 
             version, 
             max(version) OVER (PARTITION BY id) as max_version
      from local_tbl ) sub
WHERE version < max_version

为什么不在select查询中将MAXversion添加为max_version并将版本添加到GROUP BY子句中?@Tikkes,因为按版本分组时MAXversion始终等于版本。谢谢!我不知道+1.
SELECT id, version
FROM (
      select id, 
             version, 
             max(version) OVER (PARTITION BY id) as max_version
      from local_tbl ) sub
WHERE version < max_version