Приветствую Вас,
Первый раз пишу в эту группу и очень рад что здесь можно встретить
разработчиков БД FireBird.
Сразу начинаю с глупого вопроса но все-таки, как побороть не знаю:
Есть табличка накладной например NAKL, в ней есть строковое поле NU,
это поле предназначается для нумерации документов
Dmitry Kotelnikov пишет:
> Приветствую Вас,
>
Привет!
> как строковая сортировка все правильно, но надо отсортировать как
> число, можно конечно использовать ORDER BY CAST (nu AS INTEGER ) но
> проблема в "номер-3" можно ее игнорировать например доставлять в конце
> запроса. Понимаю что изначаль
Здравствуйте, Dmitry.
Вы писали 20 февраля 2006 г., 18:02:54:
> Понимаю что изначально надо было вести сортировку так:
> 0001
> 0002
> 0010
> номер-3
> но база уже забита, как выйти из ситуации? Спасибо.
Предлагаю напустить "хитрый" апдейт на это поле и исправить сразу, чтоб
потом головняков ме
Привет, Dmitry!
Вы пишешь 20 февраля 2006:
[Sorry, skipped]
DK> Есть табличка накладной например NAKL, в ней есть строковое поле NU,
DK> это поле предназначается для нумерации документов номера могут быть
DK> как числовыми так и с содержанием символов
[Sorry, skipped]
DK> как строковая сорт
У нас поже есть така табличка. Номера либо присваиваються автоматом,
либо вбиваюьбся руками - требование заказчика.
Но, в случае если в номере есть нечисловые данные, там обязательно есть
символ "-".
Соответственно запрос получается такой:
SELECT S.IDSEND,
S.INVOICE,
case
when (S.INVOI
Dmitry Kotelnikov пишет:
>
> Этот вариант не подойдет т.к. чисел может быть несколько например
> "СФ-2006/02/12-15", хотя по скорости был бы идеален.
И какое цыфирь из этого ты хочешь использовать для сорта?
2006/02/12-15 = 68.58 Эту? ;)
--
Удачи!
Shiliaev Ruslan
Dmitry Kotelnikov пишет:
> :) Тут как строку, но если строка содержит только цифры тогда надо
> сортировать как цифры.
>
Ну дык, еще раз: пишешь UDF, в которой парсишь свой магический номер
документа, если можно извлечь число -извлекаешь, если нет возвращаешь
NULL. В ORDER BY пишешь:
CASE WHEN
Hello, Alex!
You wrote to Dmitry Kotelnikov on Tue, 21 Feb 2006 11:30:03 +0300:
AC> Хаос автоматизации не поддаётся.
AC> Это аксиома.
AC> Начни с формализации бизнес-правил.
AC> Несогласных и упорствующих - расстрелять, к едрени фени!
Ну, блин, сразу и расстрелять, когда можно и повесить...
Привет, Alexander!
Вы пишешь к Alex Cherednichenko 21 февраля 2006:
AC>> Несогласных и упорствующих - расстрелять, к едрени фени!
AAV> Ну, блин, сразу и расстрелять, когда можно и повесить...
Ну, можно, при желании.
За яйца.
--
With best regards, Alex Cherednichenko.
Dmitry Kotelnikov пишет:
> >> Этот вариант не подойдет т.к. чисел может быть несколько например
> >> "СФ-2006/02/12-15", хотя по скорости был бы идеален.
>
> SR> Но вообще-то надо в консерватории править. Ты _три_ сущности (серия,
> SR> номер и дата документа) хранишь в одном поле. Подумай над
> AC>> Несогласных и упорствующих - расстрелять, к едрени фени!
>
> AAV> Ну, блин, сразу и расстрелять, когда можно и повесить...
>
> Ну, можно, при желании.
> За яйца.
"Злой ты, зайчонок. Недобрый." (С)Гоблин, Шматрица :))
"Shiliaev Ruslan" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED]
> Dmitry Kotelnikov пишет:
>> >> Этот вариант не подойдет т.к. чисел может быть несколько например
> Вот если бы ты хранил все эти атрибуты отдельно, а номер лепил бы из них
> в зависимости от требований заказчика, то
Привет, Oleg!
Вы пишешь 21 февраля 2006:
[Sorry, skipped]
OL> И чтобы ему это дало???
OL> У него простая задача - упорядочить множество номеров.
OL> Формат номера известен - пишется UDF и всё.
Нету у него формата, Олег.
Сплошная импровизация операторов вместо этого.
Посмотри его пример.
Oleg LOA пишет:
>>> >> Этот вариант не подойдет т.к. чисел может быть несколько например
>> Вот если бы ты хранил все эти атрибуты отдельно, а номер лепил бы из них
>> в зависимости от требований заказчика, то тогда бы твои волосы были
>> мягкие и шелковистые. И не возникало бы подобных вопросо
Dmitry Kotelnikov wrote:
> Многабукв
А ведь всего лишь вторник. Что же ещё будет в пятницу? :-D
--
Regards. Ded.
Dmitry Kotelnikov пишет:
> Приветствую Вас,
>
> 21.02.2006 в 14:08, Вы писали:
>
> #номер_5#=Номер документа с лидирующими нулями при разрядности 5, например
> 5
> #номер_4#=Номер документа с лидирующими нулями при разрядности 4, например
> 0175
> #букв_месяц+1_год#=Следующий месяц словам
Dmitry Kotelnikov пишет:
> Приветствую Вас,
>
> 21.02.2006 в 15:24, Вы писали:
>
> SR> Эээ... Это ноухау в шифровании данных. :)
>
> Читайте полностью пост, а не через строку. Блин народ, это тут принято
> так постебатся с новичка или как :)???
Дима, не обижайся. Народ тут, по-большей части, не
Привет, Dmitry!
Вы пишешь 21 февраля 2006:
[Sorry, skipped]
DK> А какая же это каша, это тоже самое что сказать зачем хранить мою
DK> фамилию "Котельников" полностью в отдельном поле если можно создать
DK> табличку с буковками и сделать ссылки на них формируя свою фамилию,
DK> согласны это п
Dmitry Kotelnikov wrote:
> ЗЫ: скоро напишу про проблемы с АЛТЕР + АПДЕЙТ в разных транзакциях
> где АПДЕЙТИТСЯ другой рядок, только найду "рабочую ошибку",
> встречалась ли такая проблема раньше?
наверное всё-таки в одной транзакции и апдейтится не другой рядок а
другая колоночка потому что
Dmitry Yemanov wrote:
>>встречается нынче и будет встречаться ещё некоторое время
>
>
> В 2.0 больше не встречается.
Наслышан :) Потому и сказал про "некоторое время", а не просто
"встречаться будет" ;)
--
Regards. Ded.
> Хаос автоматизации не поддаётся.
> Это аксиома.
Жизнь слишком коротка чтоб заниматься мелочами. Начнем сразу с невозможного.
> Начни с формализации бизнес-правил.
> Несогласных и упорствующих - расстрелять, к едрени фени!
Это 1 бизнес-правило? :)
Hello, aLKoGolik!
You wrote on Tue, 21 Feb 2006 20:37:10 +0200:
a> Во всех остальных случаях (IB/FB), насколько я знаю,
a> индексы по вычисляемых полях не создаются ...
FB2 умеет.
Удач
--
Alexander A. Venikov, Tobolsk, Russia
Real e-mail address is venixtntobru
Hello, Sergey!
You wrote to Dmitry Kotelnikov on Tue, 21 Feb 2006 18:26:41 +0200:
SM> Если по существу - может все же формализировать принцип
SM> построения номера более жестко? Как правильно, а не как
SM> хочет заказчик?
Тем более, что сей заказчик редко себе представляет, чего именно он хоче
Привет, Dmitry!
Вы пишешь 22 февраля 2006:
DK> Как хочет заказчик так и правильно!
Конечно! Ведь это заказчик проводит анализ соотношений сущностей,
проектирует структуры и делает нормализацию.
DK> Я не хочу продолжать эту тему, т.к. объяснять 10 раз одно и тоже самое
DK> нет смысла.
Продол
"Ded" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED]
> Dmitry Kotelnikov wrote:
>
>> ЗЫ: скоро напишу про проблемы с АЛТЕР + АПДЕЙТ в разных транзакциях
>> где АПДЕЙТИТСЯ другой рядок, только найду "рабочую ошибку",
>> встречалась ли такая проблема раньше?
>
>наверное всё-таки в
Oleg LOA wrote:
> ВЫДЫХАЙ, ВЫДЫХАЙ СКОРЕЕ, БОБЁР!!!
Я, помозоливши мозг об посты аффтара, подумал, что ему так понятнее
будет и проявил заботу. Похоже, угадал - вишь, ответ есть ;)
--
Regards. Ded.
Приветствую Вас,
21.02.2006 в 8:57, Вы писали:
SR> Напиши UDF которая выкусывает из строки число. Создай Integer поле,
SR> которое заполняй в триггере, вызывая эту UDF. По этому полю и сортируй.
Этот вариант не подойдет т.к. чисел может быть несколько например
"СФ-2006/02/12-15", хотя по скорост
Приветствую Вас,
21.02.2006 в 9:09, Вы писали:
Ю> Предлагаю напустить "хитрый" апдейт на это поле и исправить сразу, чтоб
Ю> потом головняков меньше было.
Так и будет только это можно будет сделать только с нового года т.к.
по документам уже везде пошли такие номера и менять их нельзя, можно
кон
Приветствую Вас,
21.02.2006 в 9:57, Вы писали:
a> select substr('00', 1, 10-strlen(Number)) || number, * from table
a> order by 1
a> udf: RFUNC2 или встроенными
Большое спасибо, пока воспользуюсь этим вариантом, но как я понимаю
будут проблемы со скоростью или вряд ли это почувствуется?
Приветствую Вас,
21.02.2006 в 11:24, Вы писали:
SR> И какое цыфирь из этого ты хочешь использовать для сорта?
SR> 2006/02/12-15 = 68.58 Эту? ;)
:) Тут как строку, но если строка содержит только цифры тогда надо
сортировать как цифры.
--
С Уважением, Дмитрий Котельников
Приветствую Вас,
21.02.2006 в 12:23, Вы писали:
SR> Ну дык, еще раз: пишешь UDF, в которой парсишь свой магический номер
SR> документа, если можно извлечь число -извлекаешь, если нет возвращаешь
SR> NULL. В ORDER BY пишешь:
SR> CASE WHEN INTEGER_FIELD IS NULL THEN CHAR_FIELD ELSE CAST(INTEGER_F
Приветствую Вас,
21.02.2006 в 14:08, Вы писали:
AC> Нету у него формата, Олег.
AC> Сплошная импровизация операторов вместо этого.
AC> Посмотри его пример.
Это всего лишь был пример, именно пример.
Почему импровизация, и хранить разобранный номер не имеет смысла, т.к.
номер формируется при созда
Приветствую Вас,
21.02.2006 в 14:19, Вы писали:
>> И чтобы ему это дало??? У него простая задача - упорядочить
>> множество номеров. Формат номера известен - пишется UDF и всё.
Именно.
SR> Нельзя упорядочить неупорядочимое. (С)
SR> У него номера в виде строки без маски с клавы вводят.
Да какая
Приветствую Вас,
21.02.2006 в 14:18, Вы писали:
>> Да какая маска, номер произвольный, захотел формируешь по шаблону как
>> описал раньше захотел написал Вася9, это и есть номер.
OL> А тогда о какой собственно упорядоченности идёт речь? Выясни
OL> алгоритм опредления порядка у заказчика по таком
Приветствую Вас,
21.02.2006 в 15:09, Вы писали:
D> Dmitry Kotelnikov wrote:
>> Многабукв
D>А ведь всего лишь вторник. Что же ещё будет в пятницу? :-D
Это Вы меня типа цитировали или как? Интересно в каком посте я мог
такое написать, вот прошел поиском не нашел?
--
С Уважением, Дмитрий Кот
Приветствую Вас,
21.02.2006 в 15:24, Вы писали:
SR> Dmitry Kotelnikov пишет:
>> #номер_5#=Номер документа с лидирующими нулями при разрядности 5, например
>> 5
>> #номер_4#=Номер документа с лидирующими нулями при разрядности 4, например
>> 0175
>> #букв_месяц+1_год#=Следующий месяц слова
Приветствую Вас,
21.02.2006 в 15:59, Вы писали:
SR> ИМХО, как бы это помягче сказать, у тебя не самое удачное архитектурное
SR> решение. Форматирование в удобном для юзера виде вещь нужная и полезная.
SR> НО! Это дело клиента и только клиента. Не дело хранить такую кашу на
SR> сервере.
А какая
Приветствую Вас,
21.02.2006 в 17:20, Вы писали:
DK> вот как раз твой этот "номер" - он составной. Он НЕ целый и неделимый.
DK> Как минимум потому, что там есть символы /. И еще потому, что ты его
DK> хочешь сортировать в экзотическом виде.
Символ / был показан как пример, порядок этих шаблонов м
Приветствую Вас,
21.02.2006 в 17:32, Вы писали:
>> А какая же это каша, это тоже самое что сказать зачем хранить мою
>> фамилию "Котельников" полностью в отдельном поле если можно создать
>> табличку с буковками и сделать ссылки на них формируя свою фамилию,
>> согласны это перебор. Фамилия это н
Привет!
> Почему импровизация, и хранить разобранный номер не имеет смысла, т.к.
> номер формируется при создании документа и храниться дальше как набор
> символов т.к. какой смысл его хранить по отдельности если по
> отдельности эти данные пользователю не понадобятся это просто номер
> документа
Приветствую Вас,
21.02.2006 в 18:26, Вы писали:
SM> Уважаемый, а вы не родственник Евгения Болтика? (Жень, без обид, но
SM> стиль изложения мыслей у этого товарища точно такой же).
Нет, а это плохо? :)
SM> Если по существу - может все же формализировать принцип построения
SM> номера более жестк
Приветствую Вас,
21.02.2006 в 18:24, Вы писали:
D> наверное всё-таки в одной транзакции и апдейтится не другой рядок а
D> другая колоночка потому что именно так такая проблема встречалась раньше
D> встречается нынче и будет встречаться ещё некоторое время потому что
D> пока альтер ещё не ком
Приветствую Вас,
22.02.2006 в 11:23, Вы писали:
DK>> Я не хочу продолжать эту тему, т.к. объяснять 10 раз одно и тоже самое
DK>> нет смысла.
AC> Продолжай, продолжай.
AC> Ты всех победишь.
AC> Все не правы.
AC> И упорствуют в неведении своём...
Я нее говорил, что кто-то не прав, и не стараюсь
"Dmitry Kotelnikov" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED]
> Приветствую Вас,
>
> 21.02.2006 в 8:57, Вы писали:
>
> SR> Напиши UDF которая выкусывает из строки число. Создай Integer поле,
> SR> которое заполняй в триггере, вызывая эту UDF. По этому полю и сортируй.
>
> Этот
> Я не храню 3 сущности это только номер, у меня есть шаблонная
> нумерация которая позволяет вставлять в номер и дату, и месяц и
> квартал и год и номер склада и подразделения и т.д., это желание
> клиента из чего он формируется.
Показывать номер клиенту и хранить номер в базе - две большие разниц
"Alexander Kolokolzov" <[EMAIL PROTECTED]> wrote in message news:[EMAIL
PROTECTED]
> Показывать номер клиенту и хранить номер в базе - две большие разницы. Я бы
> такой составной номер хранил в виде различных полей, а перед >выводом собирал
> бы их все в кучу. И тебе счастье и юзеру.
Номер атом
> Номер атомарен? Боюсь что да, тогда какой смысл имеют его отдельные куски в
> БД?
Кхм. А как тогда надо?
"Dmitry Kotelnikov" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED]
> Да какая маска, номер произвольный, захотел формируешь по шаблону как
> описал раньше захотел написал Вася9, это и есть номер.
А тогда о какой собственно упорядоченности идёт речь? Выясни алгоритм
опредления порядка
"Sergey Mereutsa" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED]
>Если по существу - может все же формализировать принцип построения
>номера более жестко? Как правильно, а не как хочет заказчик?
Зависит от платежеспособности клиента :-), а так, мы готовы реализовать любые
ваши прикл
49 matches
Mail list logo