Форум: "Прочее";
Текущий архив: 2012.03.25;
Скачать: [xml.tar.bz2];
ВнизЗамена части строки SQL запросом Найти похожие ветки
← →
Дмитрий (2011-11-29 04:10) [0]Нужно найти часть строки и заменить эту часть на другую. Например, в поле Adres значение "г Москва, ул. Тверская" заменить на "г. Москва, ул. Тверская", т.е. найти в строке "г " и заменить на "г. ".
В поле достаточно много записей. Как это реализовать SQL-запросом?
СУБД: FB2.1
← →
KilkennyCat © (2011-11-29 05:57) [1]в sql-92 есть строковая функция replace
← →
Dennis I. Komarov © (2011-11-29 08:13) [2]Вообще-то, КЛАДР придумали...
← →
Дмитрий (2011-11-29 09:45) [3]
> ilkennyCat © (29.11.11 05:57) [1]
> в sql-92 есть строковая функция replace
update pasp set npunkt=replace (npunkt, "г ", "г. ")
Поправьте запрос. Этот не работает
← →
Дмитрий (2011-11-29 09:54) [4]
> Dennis I. Komarov © (29.11.11 08:13) [2]
> Вообще-то, КЛАДР придумали...
Вот это они молодцы!
← →
Кщд (2011-11-29 09:57) [5]>Дмитрий (29.11.11 09:45) [3]
Например, "Устюг " -> "Устюг.")
Принято сообщать, что именно не работает и с какими ошибками/симптомами.
А сарказм свой оставьте - пустое это. Вам указали на то, что у Вас в базе бардак. Так, скорее всего, и есть.
← →
Дмитрий (2011-11-29 10:01) [6]
> Кщд (29.11.11 09:57) [5]
> >Дмитрий (29.11.11 09:45) [3]
> Например, "Устюг " -> "Устюг.")
> Принято сообщать, что именно не работает и с какими ошибками/симптомами.
>
> А сарказм свой оставьте - пустое это. Вам указали на то,
> что у Вас в базе бардак. Так, скорее всего, и есть.
Разные задачи, разные проекты, где бардак?
Запрос, который я привел выше не работает. Нет ошибок и сообщений, просто не заменяет записи в таблице на тот формат, который мне нужен
← →
Anatoly Podgoretsky © (2011-11-29 10:05) [7]Необходимость приведение нормализации данных, это и есть бардак.
Да и кстати, с чего бы ей заменять, когда всего лишь установка переменной
← →
Дмитрий (2011-11-29 10:06) [8]
> Anatoly Podgoretsky © (29.11.11 10:05) [7]
Анатолий, помогите с запросом! Как заменить?
← →
Anatoly Podgoretsky © (2011-11-29 10:09) [9]> Дмитрий (29.11.2011 10:06:08) [8]
Это же FB, а я не признаю эту СУБД, ошибка природы. Соответственно я не знаю
особенностей, и мой ответ будет дилетантским. У нее одно достоинство - оно
халява.
← →
Anatoly Podgoretsky © (2011-11-29 10:11) [10]> Дмитрий (29.11.2011 10:06:08) [8]
Но говорят, что оно соответствует SQL-92, тогда вот документация
http://www.podgoretsky.com/ftp/Docs/DB/SQL%20Draft/sql1992.txt
← →
Дмитрий (2011-11-29 10:11) [11]Спасибо
← →
Dennis I. Komarov © (2011-11-29 10:14) [12]
> Например, "Устюг " -> "Устюг.")
+
г Москва
Г Москва
Г. Москва
Г МОСКВА
Москва
город Москва
гор. Москва
можно долго продолжать вариации...
З.Ы.
И это еще не касаясь: проезд, проспект, переулок, площадь...
← →
Anatoly Podgoretsky © (2011-11-29 10:18) [13]> Dennis I. Komarov (29.11.2011 10:14:12) [12]
В базе гигантский бардак. Теперь только или руками или методом постепенного
приближения, с новой кучей ошибок
← →
Dennis I. Komarov © (2011-11-29 10:31) [14]
> Anatoly Podgoretsky © (29.11.11 10:18) [13]
Это пока не бардак, это его потенциальная возможность при подобной архитектуре. Как на самом деле я не знаю.
← →
Омлет © (2011-11-29 10:46) [15]
> Дмитрий (29.11.11 09:45) [3]
> update pasp set npunkt=replace (npunkt, "г ", "г. ")
Нормальный запрос.
Вот этоSELECT npunkt FROM pasp WHERE POSITION("г " IN npunkt) > 0
что возвращает?
← →
Кщд (2011-11-29 10:51) [16]>Дмитрий (29.11.11 10:01) [6]
>Нет ошибок и сообщений, просто не заменяет записи в таблице на тот формат, который мне нужен
пример?
← →
Ega23 © (2011-11-29 11:09) [17]Только ручками.
← →
KilkennyCat © (2011-11-29 23:26) [18]
> Ega23 © (29.11.11 11:09) [17]
ты злой :)
> Дмитрий (29.11.11 09:45) [3]
>
>
> > ilkennyCat © (29.11.11 05:57) [1]
> > в sql-92 есть строковая функция replace
>
> update pasp set npunkt=replace (npunkt, "г ", "г. ")
> Поправьте запрос. Этот не работает
я б поправил, но я с бд всякими не дружу, скьюл не знаю, и вообще работаю в автосервисе.
← →
asail © (2011-11-29 23:52) [19]
> Дмитрий (29.11.11 04:10)
UDF тебе в помощь... Или свой напиши или воспользуйся одной из туевой хучи бесплатных DLL.
← →
Ega23 © (2011-11-30 00:24) [20]
> ты злой :)
Я не злой. Как раз на прошлой неделе похожую штуку ваял.
Можно "предложить", чекбоксы там включить, цветом строки "похожие" пометить.
Но решение должен принимать человек.
← →
Труп Васи Доброго © (2011-11-30 14:31) [21]Блин, этот вопрос старый как овно мамонта. Читать здесь http://www.firebirdfaq.org/faq374/
← →
Anatoly Podgoretsky © (2011-11-30 15:42) [22]> KilkennyCat (29.11.2011 23:26:18) [18]
Тогда к тебе можно обращаться по поводу стука в коробке, а в подвале мы сами
как ни будь.
← →
KilkennyCat © (2011-11-30 20:26) [23]
> Anatoly Podgoretsky © (30.11.11 15:42) [22]
да, я про стуки в коробки дохрена знаю. там много хреней, твердых очень, и они как по отдельности так и вместе, в любой комбинации могут ударяться друг об друга или об че-нить еще, вызывая в воздухе колебания, слышимые человеческим ухом (а возможно и нечеловеческим), и в колебания во всей конструкции, чуствимые седалищем (любым), приобретшие в народе понятие "стук".
В последнее время, я склоняюсь к теории, что там внутре есть невидимые глазу существа с молотками, которые обеспечивают работу механизма переключения (иным способом логику всех этих шестеренок не объяснить) и тащутся от этого. А иногда не тащутся или просто им выйти надо и они стучат молотками.
а вообще, странное название - коробка передач. системный блок не называют же коробкой мильенов транзисторов. и холодильник не называют коробкой еды.
← →
Inovet © (2011-11-30 21:46) [24]> [23] KilkennyCat © (30.11.11 20:26)
> системный блок не называют же коробкой мильенов транзисторов.
> и холодильник не называют коробкой еды.
системный блок - коробка с чипсами, холодильник - коробка со льдом icebox.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2012.03.25;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.004 c