Я пытаюсь выполнить поиск с диапазоном дат - в результате отображать только те строки, которые имеют определенное значение (перечисленные в другом столбце). Это означает, что в запросе задействованы два действия SELECT. Я неправильно понимаю этот запрос.

Мой запрос здесь

$sql="SELECT (SELECT * FROM `student_db` 
          WHERE `stu_registered_date` 
          BETWEEN '2015-01-07' AND '2015-01-17') 
      WHERE `stu_trainer_id` LIKE 'Trainer-1'"
0
Franklin Vaz 12 Май 2015 в 09:32

1 ответ

Лучший ответ

Вам не нужны 2 запроса, а один запрос с 2 условиями

      SELECT * FROM `student_db` 
      WHERE `stu_registered_date` 
      BETWEEN '2015-01-07' AND '2015-01-17'
      and `stu_trainer_id` = 'Trainer-1'
0
Abhik Chakraborty 12 Май 2015 в 09:34
Спасибо! Но MSQL говорит: #1054 - Champ 'stu_trainer_id = Trainer-1' inconnu dans order clause
 – 
Franklin Vaz
12 Май 2015 в 09:37
Хм, похоже, столбец недоступен в таблице. Укажите структуру таблицы и к какой таблице принадлежит stu_trainer_id? показать также определение таблицы для этой таблицы.
 – 
Abhik Chakraborty
12 Май 2015 в 09:39
Я не понимаю, в чем проблема ... впервые, когда я попробовал ваше предложение, было выдано сообщение об ошибке выше. Я дважды проверил детали своего стола, все было идеально! После того, как другого выхода нет, я уронил стол и переделал его! Ура !! теперь он работает отлично! Большое тебе спасибо!
 – 
Franklin Vaz
12 Май 2015 в 10:59