![]() |
|
Модераторы: LSD |
![]()
|
|
| DimW |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
всем привет.
описание ситуации: есть таблица с полем text varchar2(2000), в котором хранится информация о проводимых закупках той или иной продукции:
задача - из всего разнообразия закупок, выбрать для клиента закупки по его тематике по словосочетаниям. словосочитания хранятся в справочнике.
запрос выбирает закупки рыбной продукции и исключает замороженную рыбу и полуфабрикаты. в результат устраивает, но хотелось бы избавиться от динамической части с LIKE и NOT LIKE что посоветуете? ЗЫ. использовать OracleText нет возможности т.к. Oracle Standart Edition One |
||||
|
|||||
| Zloxa |
|
|||
|
Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 37 Всего: 161 |
регекспом?
-------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка |
|||
|
||||
| DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
догадывался что regexp поможет, но выражение родить не мог, спасибо!
Zloxa, из твоего опыта, траблы с производительностью при использовании regexp были? И интересуют все подводные камни. еще вопрос, мне не всегда требуется применять словосочетания для подбора заявок, некоторых интересуют все заказы. в случае с regexp_like понятно передал * и выбирается все:
а как быть в случае с not regexp_like? быть может возможно соответствие и отрицание построить одним выражением? ну или какое выражение применить для not regexp_like что бы отрицание не применялось? Добавлено через 9 минут и 35 секунд странно, заявленная опция 'i' - Case insensitive matching не работает? или работает не так как подумал? |
|||
|
||||
| DimW |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
а вот и камушки:
признак конца строки(chr(10)) не хавает, как с этим быть? |
||||
|
|||||
| Zloxa |
|
|||
|
Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 37 Всего: 161 |
'^$' вроде как должен означать паттерн строки не имеющей ни одного символа(^-начало строки, $- конец), что в оракле не возможно, потмму всегда, по идее, должно фолсить.
regexpы в продуктиве не использовал, но особых траблов с производительностью не неблюдал. Работают конечно определенно дольше лайка исравнения, вопрос с какого момента "дольше" считать проблемой ;) Всех никто не знает. Но они есть. Не всегда ораклиный регексп работает так как написано во всяких букварях по регекспу. Некоторые паттерны не работают. Из тех, которые я знаю точно- '.'(любой символ) не работает в 10,2,0,1 -------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка |
|||
|
||||
| DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
спасибо помогло у меня для 2000 клиентов динамический лайк хавает едро полностью и формирование данных для всех клиентов занимает примерно 4 часа - ВОТ ЭТО ПРОБЛЕМА! а по поводу есть что сказать? |
|||
|
||||
| Zloxa |
|
||||
|
Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 37 Всего: 161 |
Не заметил. Ты опубликовал второй пост, пока я тебе отвечал на первый.
эт не камни, это фича. а вот то что i не работает с кирилицей - видать камни. Это сообщение отредактировал(а) Zloxa - 29.6.2010, 12:04 -------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка |
||||
|
|||||
| DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
||||
|
||||
| Zloxa |
|
|||
|
Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 37 Всего: 161 |
кстати, попробуй на 11й c i и без upper
мне интересно - пофиксили? -------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка |
|||
|
||||
| DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
||||
|
||||
| DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
||||
|
||||
| Zloxa |
|
|||
|
Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 37 Всего: 161 |
пля
:(( вопрос для меня открыт Это сообщение отредактировал(а) Zloxa - 30.6.2010, 10:05 -------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка |
|||
|
||||
| DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
для меня не критично ибо:
услуга без описания - все равно, что улица без названия... Добавлено @ 12:17 кстати, погонял я вчера регэксп на своих нанных: 11g, ~300 000 строк - лайку проиграл в ~4,5 раза. 10g, ~50 000 сток - лайку проиграл в ~85 раз. то ли в 11g аптимизаровали регулярки, либо при увеличении объема данных лайк значительно теряет производительность. но даже на 11g результат не утишительный - боюсь на продуктив ставить. есть еще варианты как динамику в статику переделать при нынешней архитектуре? Это сообщение отредактировал(а) DimW - 30.6.2010, 12:18 |
|||
|
||||
![]()
|
| Правила форума "Oracle" | |
|
|
Данный раздел предназначен для обсуждения проблем с Oracle Database, другие продукты Oracle здесь не обсуждаются. Просьба при создании темы, придерживаться следующих правил:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, LSD. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Oracle | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |