Re: How to get the position of each record in a SELECT statement
| От | Adelo Herrero Pérez |
|---|---|
| Тема | Re: How to get the position of each record in a SELECT statement |
| Дата | |
| Msg-id | 1C7819B0-3586-430E-8D9F-7B2C1836F6A6@gmail.com обсуждение исходный текст |
| Ответ на | Re: How to get the position of each record in a SELECT statement (Adelo Herrero Pérez <adelo.herrero@gmail.com>) |
| Список | pgsql-sql |
El 08/10/2016, a las 09:35, Adelo Herrero Pérez <adelo.herrero@gmail.com> escribió:
El 07/10/2016, a las 19:20, JORGE MALDONADO <jorgemal1960@gmail.com> escribió:Let´s say that I have the following simple SELECT statement:
SELECT first, id FROM customers ORDER BY first
This would result in something like this:
Charles C1001
John A3021
Kevin F2016
Paul N4312
Steve J0087
Is it possible to include a "field" in the SELECT such that it represents the position of each record?
For example, I need to get a result like this:
1 Charles C1001
2 John A3021
3 Kevin F2016
4 Paul N4312
5 Steve J0087
Respectfully,
Jorge Maldonado
Hi:
If you need the order in the result (not physically) can try this code:
SELECT
(SELECT COUNT(*)
FROM customers o
WHERE (o.first = c.first) and (o.id = c.id)) AS position,
c.first,
c.id
FROM customers c
order by c.first
Hope this help,
Best regards.
Sorry, the correct code is:
SELECT
(SELECT COUNT(*)
FROM customers o
WHERE o.first <= c.first) AS position,
c.first,
c.id
FROM customers c
order by c.first
Best regards.
Вложения
В списке pgsql-sql по дате отправления: