Операторы SQL: И и ИЛИ


Мне просто интересно, можете ли вы использовать их оба в PHP-коде. Я подумал примерно так:

$sql2 = mysql_query("SELECT * FROM forum WHERE id='$topicsnumber' AND main='0' OR main='1' OR main='2'");   
while($row=mysql_fetch_array($sql2)) {code in here}

Так, чтобы он проверял это так, ГДЕ id='$topicsnumber' И (main='0' ИЛИ main='1' ИЛИ main='2'). Возможно ли это?

Author: Darren Burgess, 2011-12-21

1 answers

Да, это возможно с круглыми скобками вокруг условий, но лучше записать как

mysql_query("SELECT * FROM forum WHERE id='$topicsnumber' AND main IN ('0','1','2')");

Таким образом, вам не придется беспокоиться о приоритете операторов.

Если main является числовым типом данных, вы можете удалить апострофы вокруг чисел в своем запросе.

 7
Author: flesk, 2011-12-20 22:06:24