У меня вопрос, можно ли сделать каким то образом проверку на какое нибудь поле (вернет ли запрос результат). Например осуществляя запрос используя CASE. Первое условие ищет по колонке со странами, если запрос ничего не возвращает ищет в колонке с городами и т.д.
А что лучше, как быть тогда в этой ситуации, что можно придумать что бы быстро работало? Соседний топик, этому посвещен http://www.php.ru/forum/viewtopic.php?f=20&t=43005
Есть вот другой вопрос, допустим придет множество значений к примеру 5 или 15 всегда по разному. Какие поля будут использоваться заведомо не известно, и в каких полях искать тот или иной параметр то же не известно, но количество полей ограничено всего три, а количество параметров может быть соответственно больше Как такое можно реализовать IN у LIKE нету, но как тогда? Код (Text): SELECT * FROM an_object WHERE concat(city, raion, street, area) LIKE IN ('param1', 'param2', 'param3', 'param4', 'param5')
IN () это замена/аналог OR. Если не ошибаюсь, интерпретатор mySQL всегда транслирует это выражение в набор OR-ов, когда подготавливает запрос к выполнению.