72 похожих чатов

Доброго времени суток! Подскажите, что гуглить. Если я хочу в

базе к номеру заказа генерить средствами sql такую беду A1234-0001. Где A1234 номер заказа, а -0001 база сама проставляет?

7 ответов

20 просмотров

Ну в общем-то это — бизнес-логика, это надо руками (программой) делать, вне СУБД, либо процедурами в БД.

СУБД у тебя какая ?

Ivan-Trubchaninov Автор вопроса
Ilya Zviagin
СУБД у тебя какая ?

misql или posgress. На данном этапе может быть любая

Ещё раз (отвлекался на завтрак) — тут ничего гуглить не надо. И нечего. Это тупо бизнес-логика. Ей не должна СУБД управлять очень сильно (можно на процедурах или триггерах, но не надо встраивать в структуру таблиц так вот явно). У тебя номер заказа состоит из двух частей — код заказа (может быть уникальный) и номер по порядку сквозной. И тебе надо составить полный номер из этих двух полей. Во-первых, их наверное надо хранить раздельно. Но это зависит от операций с ним. Во-вторых, для второго надо просто сделать счётчик в какой-то служебной таблице — типа вид заказа (документа) (PK) и последний задействованый номер. При генерации нового номера заказа надо брать последний, увеличивать и сохранять обратно. Всё в одной транзакции , естественно. А SEQUENCE тут ни при чём, нельзя его тут использовать , почти наверняка он тебе не подойдёт.

Ivan-Trubchaninov Автор вопроса
Ilya Zviagin
Ещё раз (отвлекался на завтрак) — тут ничего гугли...

Спасибо. В целом, нет никакой проблемы по считать это вне базы. Мне казалось, что году в 15 я читал, как бд сама подставляет такие штуки по маске, но ничего не нагуглил. Решил спросить, может просто я не знаю как это называется)

Похожие вопросы

Обсуждают сегодня

Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
7
Вопрос на перед, на следующую пятницу. Сколько строк кода можно вешать на одного программиста, понятно что если проект хорошо написан то можно и миллион. Но есть же где то пре...
AlekseyK Kluchnikov
31
Немного оффтопа: а кто на чем сидит для осдева в плане ide/редактора? Последнее время сидел на vscode, но я его прям не могу нормально воспринимать, перешел на сlion, но меня...
Evg Resh
29
День добрый, подскажите пожалуйста, есть ли какой-то способ сказать ребару не компилировать определённое приложение? Всю доку их перечиатл ничего подобного не нашёл
Кирилл
14
Я правильно понимаю что нет способов получить список ожидающих заявок на вступление в группу с помощью бота из mtproto?
Шамиль Прилов
7
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Всем привет Подскажите, какой план выбирать на Heroku Если я хочу запускать scheduled jobs (queues) на своем сервере? Я так понимаю для queues запускаются на отдельных workers...
Egor Chernenko
1
Вот объясните, как это работает: Вот есть допустим unix-подобная система, и программа запускает допустим printf или fork, как это передается ядру, и как оно обрабатывать начин...
Егор
14
Что за японодичь? Мне хоть m68k, хоть 8080, 8088, на любом можно что-то создать
Егор
5
А какие существуют способы обработки ошибок выделения памяти в ядре? Т.е., допустим, есть функция, которая возвращает адрес свободной страницы в физической памяти и диапазон в...
disba1ancer
51
Карта сайта