Re: equivalent of oracle rank() in postgres

Поиск
Список
Период
Сортировка
От Greg Sabino Mullane
Тема Re: equivalent of oracle rank() in postgres
Дата
Msg-id 31bf0e84213104473bc7c80d2b0a9fb3@biglumber.com
обсуждение исходный текст
Ответ на equivalent of oracle rank() in postgres  ("Chandan_Kumaraiah" <Chandan_Kumaraiah@satyam.com>)
Список pgsql-sql
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


> Jus wanted the equivalent for rank() as in tis example..

> SELECT *
> FROM (
>   SELECT employee_id, last_name, salary,
>   RANK() OVER (ORDER BY salary DESC) EMPRANK
>   FROM employees)
> WHERE emprank = 3;

There is no direct equivalent to rank(), but there are certainly
other ways to get the results. The above query can be written in
PostgreSQL as:

SELECT employee_id, last_name, salary
FROM employees
WHERE salary =(SELECT DISTINCT salary FROM employees ORDER BY salary DESC OFFSET 2 LIMIT 1);

- --
Greg Sabino Mullane greg@turnstep.com
PGP Key: 0x14964AC8 200503212152
http://biglumber.com/x/web?pk=2529DF6AB8F79407E94445B4BC9B906714964AC8
-----BEGIN PGP SIGNATURE-----

iD8DBQFCP4hwvJuQZxSWSsgRAoKPAKDE0pB4NueE0Dh9EfJiXw79SvCDoACcC4xb
ydxVgK9DgGHQXJqFIrlHIIo=
=GRIX
-----END PGP SIGNATURE-----




В списке pgsql-sql по дате отправления:

Предыдущее
От: Scott Marlowe
Дата:
Сообщение: Re: "Flattening" query result into columns
Следующее
От: Theo Galanakis
Дата:
Сообщение: Re: C function extending postgres