2012-06-18 5 views
0

Это очень простая проблема. Я просто должен делать что-то глупое:Множественные условия в месте заключения, нарушение второго условия

Этот запрос вторит ряд строк ID:

$query = "SELECT * FROM userpage WHERE uploaderrating = $rating"; 
     $result = mysql_query($query); 
     $row1= mysql_fetch_array($result); 
      echo $row1[id]; 

Когда я добавляю в качестве дополнительного условия (даже если условие ОБЯЗАТЕЛЬНО встречающейся в базе данных SQL на эхо . действительно производит ничего (т.е. переменная пуста) Неисправный код:

$query = "SELECT * FROM userpage WHERE uploaderrating = $rating and reviewer = NULL"; 
     $result = mysql_query($query); 
     $row1= mysql_fetch_array($result); 
      echo $row1[id]; 

ответ

6

Вы не можете использовать

reviewer = NULL 

Вы должны использовать

reviewer IS NULL 

NULL - неопределенное значение, поэтому оно не равно ни к чему; поэтому вам нужно использовать IS для его поиска.

0

насколько я знаю, нулевые значения сверяются с IS

  • ... где ххх нуль
  • ... где ххх IS NOT NULL
1

вы должны использовать

$query = "SELECT * FROM userpage WHERE uploaderrating = $rating and reviewer IS NULL"; 
    $result = mysql_query($query); 
    $row1= mysql_fetch_array($result); 
     echo $row1[id]; 

Я надеюсь, что это работает.

Смежные вопросы