Sql
SELECT * FROM bdname WHERE num='1' AND num='2' AND num='10' AND num='21'
ну и в таком роде гдето пока 500 условий.
Можно ли так и писать (AND num='21') или можно подругому. Чтобы оптимально.
Цитата:
Originally posted by Bigzone
Как правильно построить SQL запрос следующего вида:
SELECT * FROM bdname WHERE num='1' AND num='2' AND num='10' AND num='21'
ну и в таком роде гдето пока 500 условий.
Можно ли так и писать (AND num='21') или можно подругому. Чтобы оптимально.
Как правильно построить 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 ...)