Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / порядковый номер записи в выборке / 4 сообщений из 4, страница 1 из 1
02.12.2018, 06:40
    #39741585
polin11
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
порядковый номер записи в выборке
Использую postgresql
Есть прекрасная возможность узнать порядковый номер записи в выборке
Код: sql
1.
2.
3.
4.
5.
SELECT
"Код",
ROW_NUMBER() OVER(ORDER BY "Код") num
FROM "Коды"
ORDER BY "Код"  


Предположим имеем 100 записей получаем
Код 1
Код 2
Код 3
:
Код 13
Код 14
:
Код 100


Мне нужно добавить лидирующие нули перед порядковым номером:
Код 001
Код 002
Код 003
:
Код 013
Код 014
:
Код 100
...
Рейтинг: 0 / 0
02.12.2018, 12:50
    #39741631
полудух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
порядковый номер записи в выборке
Код: plsql
1.
2.
lpad(string text, length int [, fill text]): lpad('37492', 7, '0') = 0037492 -- 7 = кол-во цифр всего в итоге
to_char(nr, 'fm0000000')
...
Рейтинг: 0 / 0
02.12.2018, 13:39
    #39741649
polin11
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
порядковый номер записи в выборке
полудух,

Спасибо, но количество лидирующих нулей, которые нужно добавить, нужно вычислить динамически, как-то так

SELECT lpad('', num, '0')
from(
select char_length(count(*)::text) as num
from "Коды"
)T
...
Рейтинг: 0 / 0
02.12.2018, 15:04
    #39741679
полудух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
порядковый номер записи в выборке
хм
наверное лучше через union all тогда или WITH
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / порядковый номер записи в выборке / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]