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

Ваш аккаунт

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

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

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

Sql

2.0K
12 сентября 2004 года
Bigzone
49 / / 18.08.2004
Как правильно построить SQL запрос следующего вида:
SELECT * FROM bdname WHERE num='1' AND num='2' AND num='10' AND num='21'

ну и в таком роде гдето пока 500 условий.
Можно ли так и писать (AND num='21') или можно подругому. Чтобы оптимально.
368
12 сентября 2004 года
rostyslav
629 / / 13.07.2004
Цитата:
Originally posted by Bigzone
Как правильно построить SQL запрос следующего вида:
SELECT * FROM bdname WHERE num='1' AND num='2' AND num='10' AND num='21'

ну и в таком роде гдето пока 500 условий.
Можно ли так и писать (AND num='21') или можно подругому. Чтобы оптимально.


в WHERE выражении, что ты написал, скорей всего вместо AND нужен OR

более оптимально
SELECT * FROM bdname WHERE num IN(1,2,10,21,...)

кроме этого, еще можешь определить индекс на основе поля num.

но если это где-то 500 условий и 1, 2, 10...выбираются из поля какой-то другой таблицы, то лучше бы написать:

SELECT * FROM bdname WHERE num IN(SELECT DISTINCT num FROM other_table WHERE ...)

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