![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 07.06.2015
Сообщений: 164
|
![]()
Использую postgresql
Есть прекрасная возможность узнать порядковый номер записи в выборке Код:
Код 1 Код 2 Код 3 : Код 13 Код 14 : Код 100 Мне нужно добавить лидирующие нули перед порядковым номером: Код 001 Код 002 Код 003 : Код 013 Код 014 : Код 100 Кто подскажет, как это проще всего сделать? |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
попробуйте так:
Код:
|
![]() |
![]() |
![]() |
#3 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
Вот именно. Скорее всего для отображения на клиенте. А там можно просто форматировать вывод нужным образом не нагружая сервер лишними действиями
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 07.06.2015
Сообщений: 164
|
![]()
Спасибо, работает, но to_char(num,'000') проблема в то, количество записей 100 я привел в качестве примера. Количество нулей, которые требуется добавить, нужно вычислить динамически, наверно как-то через char_length() и count().
Использую это для более сложного запроса, в котором я строю путь в таблице с иерархией до конечных записей, используя порядковые номера, как строки. И затем сортирую по этому пути, СУБД используют лексикографическую сортировку и получает , что строка '4' > строки '15'. Поэтому я решил добавлять лидирующие нули '04'<'15' |
![]() |
![]() |
![]() |
#5 | ||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
А вообще, если подходить строго, то тут попахивает кривыми костылями. Цитата:
Если у Вас есть ORDER BY "Код" - так и используйте этот "Код" для сортировки, зачем Вам ещё что-то городить сверху?! Последний раз редактировалось Serge_Bliznykov; 02.12.2018 в 16:51. |
||
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Порядковый номер | Zhenya Yakubov | Microsoft Office Excel | 3 | 02.09.2014 10:43 |
порядковый номер | baks1 | Microsoft Office Excel | 1 | 30.04.2012 20:54 |
Порядковый номер в mysql | Furyon | PHP | 6 | 03.07.2011 19:39 |
Порядковый номер записи | Yur@ | БД в Delphi | 4 | 25.12.2009 08:37 |
SQL: как присвоить записи её порядковый номер? | FReeMAN(Q) | Помощь студентам | 10 | 18.04.2009 11:43 |