Мой запрос MySQL не будет работать - PullRequest
1 голос
/ 05 февраля 2010

У меня следующий запрос, который искал в базе данных руководства по эпизодам введенные пользователем данные:

$query = "SELECT * 
            FROM epguide 
           WHERE EpisodeTitle LIKE '%$trimmed%' 
              OR Synopsis LIKE '%$trimmed%' 
              OR Notes LIKE '%$trimmed%' 
        ORDER BY o";

Это работает нормально, но когда я добавляю 'Series =' $ ser 'AND', оно останавливается:

$query = "SELECT * 
            FROM epguide 
           WHERE Series = '$ser' 
             AND EpisodeTitle LIKE '%$trimmed%' 
              OR Synopsis LIKE '%$trimmed%' 
              OR Notes LIKE '%$trimmed%' 
        ORDER BY o";

Похоже, это должно работать. Что я могу сделать, чтобы это исправить?

Ответы [ 2 ]

3 голосов
/ 05 февраля 2010

Использование:

  SELECT * 
    FROM epguide 
   WHERE Series = '$ser' 
     AND (EpisodeTitle LIKE '%$trimmed%' 
          OR Synopsis LIKE '%$trimmed%' 
          OR Notes LIKE '%$trimmed%')
ORDER BY o

Вам необходимо заключить в скобки / сгруппировать операторы в предложении WHERE.

2 голосов
/ 05 февраля 2010

Вам нужно будет решить, имеете ли вы в виду

SELECT * FROM epguide WHERE (Series = '$ser' AND EpisodeTitle LIKE '%$trimmed%') OR Synopsis LIKE '%$trimmed%' OR Notes LIKE '%$trimmed%' ORDER BY o

или

SELECT * FROM epguide WHERE Series = '$ser' AND (EpisodeTitle LIKE '%$trimmed%' OR Synopsis LIKE '%$trimmed%' OR Notes LIKE '%$trimmed%') ORDER BY o

и измените запрос соответствующим образом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...