Добрый день.SQL Как свести к минимуму запрос?
Таблицы есть строка:
name
стоматолог
стоматолога
стоматологом
врач стоматолог
врача стоматолога
врач-стоматолог
врача-стоматолога
врача стоматолога-терапевта
врача-стоматолога$
врача-стоматолога$1
врача-стоматолога-терапевта$
врача-стоматолога-терапевта$1
врачом-стоматологом
врачом стоматологом-терапевтом
врачом-стоматологом-терапевтом
КОНСУЛЬТАЦИЯ (ПРИЕМ) ВРАЧА-СТОМАТОЛОГА БЕСПЛАТНАЯ
УСЛУГИ СТОМАТОЛОГИЧЕСКИЕ ХИРУРГ-СТОМАТОЛОГ
КОНСУЛЬТАЦИЯ (ПРИЕМ) ВРАЧА-СТОМАТОЛОГА-ХИРУРГА
КОНСУЛЬТАЦИЯ (ПРИЕМ) ВРАЧА-СТОМАТОЛОГА
КОНСУЛЬТАЦИЯ (ПРИЕМ) ВРАЧА-СТОМАТОЛОГА-ХИРУРГА
КОНСУЛЬТАЦИЯ (ПРИЕМ) ВРАЧА-СТОМАТОЛОГА
КОНСУЛЬТАЦИЯ (ПРИЕМ) ВРАЧА-СТОМАТОЛОГА ДЕТСКОГО БЕСПЛАТНАЯ ВСЕ ВИДЫ
Я использую следующий запрос:
...
WHERE name LIKE 'стоматолог'
OR name LIKE 'стоматолог[$-()/ ]'
OR name LIKE 'стоматолог[$-()/ ]%'
OR name LIKE 'стоматолог[аеёиоуыэюяъь]'
OR name LIKE 'стоматолог[аеёиоуыэюяъь][$-()/ ]%'
OR name LIKE 'стоматолог[аеёиоуыэюяъь][йюм$-()/ ]'
OR name LIKE 'стоматолог[аеёиоуыэюяъь][йюм$-()/ ]%'
OR name LIKE '[$-()/ ]стоматолог'
OR name LIKE '[$-()/ ]стоматолог[аеёиоуыэюяъь]'
OR name LIKE '[$-()/ ]стоматолог[аеёиоуыэюяъь][йюм$-()/ ]'
OR name LIKE '[$-()/ ]стоматолог[аеёиоуыэюяъь][йюм$-()/ ]%'
OR name LIKE '%[$-()/ ]стоматолог'
OR name LIKE '%[$-()/ ]стоматолог[аеёиоуыэюяъь]'
OR name LIKE '%[$-()/ ]стоматолог[аеёиоуыэюяъь][йюм$-()/ ]'
OR name LIKE '%[$-()/ ]стоматолог[аеёиоуыэюяъь][йюм$-()/ ]%'
OR name LIKE '%[$-()/ ]стоматолог[$-()/ ]%'
OR name LIKE '%[$-()/ ]стоматолог[аеёиоуыэюяъь][$-()/ ]%'
OR name LIKE '%[$-()/ ]стоматолог[аеёиоуыэюяъь][йюм$-()/ ][$-()/ ]%'
Скажите, пожалуйста, как минимизировать этот запрос и на самом деле это?
P.S .: теперь у нас есть 17 условий в запросе (в where
). Я хотел бы сгруппировать все эти условия, если это возможно.
Чего вы хотите достичь? – Alexander
@Alexander теперь у нас есть 17 условий в запросе (в 'where'). Я хотел бы сгруппировать все эти условия, если это возможно. –
Я думаю, что сначала вы должны прокомментировать все ваши условия, а затем раскомментировать их один за другим. Например, ИЛИ имя LIKE 'стоматолог [$ -() /]' ИЛИ имя LIKE 'стоматолог [$ -() /]%' вернется такое же количество строк. так что 'стоматолог [$ -() /]' не требуется. и так далее. – KumarHarsh