Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Отбор по нескольким критериям

55K
07 сентября 2011 года
byFahrenheit
17 / / 23.06.2010
Здравствуйте.
Не знаю насколько название темы соответствует моей проблеме, но постараюсь пояснить как можно понятней.
Есть 4 таблицы, в каждую из которых надо подставить значение, и получить результат следующего типа: если в результате ноль строк, то выполняется скрипт, иначе - не выполняется.
Проблема возникла в составлении самого запроса. Получается что есть 4 таблицы, в каждую из которых надо подставить каждое из четырех значений для проверки. Что-бы было более понятно - покажу пример:

Цитата:
SELECT * FROM users WHERE driver_1 = '$driver_1' OR driver_1 = '$driver_2' OR driver_1 = '$driver_3' OR driver_1 = '$driver_4' OR ..........еще много буковок.......... OR driver_4 = '$driver_1' OR driver_4 = '$driver_2' OR driver_4 = '$driver_3' OR driver_4 = '$driver_4'




Как лучше всего записать запрос?

P.S. Что бы не было вопросов типо: "Зачем это надо", я сразу дам ответ:
Юзер вводит в каждую из четырех форм определенное значение, которое в свою очередь должно проверить на наличие такого же значения в каждой из четырех таблиц. Если хоть одно из значений совпадает - скрипт выводит сообщение о том, что данное значение уже занесено в БД.

14
08 сентября 2011 года
Phodopus
3.3K / / 19.06.2008
Полегче будет смотреться с IN: SELECT ... WHERE ? IN () ...
20K
08 сентября 2011 года
Finder
37 / / 06.05.2007
Из примера я вижу только одну таблицу "users", что с остальными?
Если оговорились то лучше IN использовать.
55K
08 сентября 2011 года
byFahrenheit
17 / / 23.06.2010
Цитата: Finder
Из примера я вижу только одну таблицу "users", что с остальными?
Если оговорились то лучше IN использовать.


таблица users - выводит имя пользователя. там в принципе можно поставить звездочку *. От этого ничего не поменяется...

Цитата: Phodopus
Полегче будет смотреться с IN: SELECT ... WHERE ? IN () ...


Спасибо. Попробую...

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог