3
Рассмотрим следующий SQL запрос и ответ:PostgreSQL: Перечислите SQL результат запроса
CREATE TEMPORARY TABLE dreams (name text, type text);
INSERT INTO dreams VALUES ('Monkey', 'nice');
INSERT INTO dreams VALUES ('Snake', 'Not nice');
INSERT INTO dreams VALUES ('Donkey', 'nice');
INSERT INTO dreams VALUES ('Bird', 'nice');
SELECT name from dreams WHERE type='nice' ORDER BY name;
name
--------
Bird
Donkey
Monkey
(3 rows)
Я хотел бы перечислить результаты по порядку появления, независимо от каких-либо существующих идентификаторов, для удобства. Ожидаемый результат должен быть что-то а-ля:
SELECT <magic_enumeration>, name from dreams WHERE type='nice' ORDER BY name;
magic_enumeration | name
-------------------+--------
1 | Bird
2 | Donkey
3 | Monkey
(3 rows)
Любые идеи, как перечислить результат запроса на порядок появления?
вам нужно 'над (заказ по имени)', чтобы получить правильную нумерацию. –
'SELECT row_number OVER (ORDER BY name) magic_enumeration, name ...' возвращает 'ERROR: синтаксическая ошибка в или около" OVER "'. –
'row_number()' является функцией, требуется '()' - исправление вашего ответа. –