Проблема вывода на экран выборки INNER JOIN

Добрый вечер. Столкнулся с такой проблемой. Хотел вывести данные из двух совмещенных таблиц при помощи INNER JOIN но увы не получилось. Пожалуйста помогите найти косяк. Целый день уже бьюсь:(

Код (Text):
  1. function inner($connect){
  2.     try{
  3.        $sql = «SELECT `teacher.name`, `lesson.less` FROM `teacher` INNER JOIN `lesson` ON ‘teacher.id’ = ‘lesson.teacher_id'»;
  4.        $prepare = $connect->prepare($sql);
  5.        $prepare->execute();
  6.          while($daster = $prepare->fetch(PDO::FETCH_ASSOC)){
  7.          $result = «<ol><li>Имя преподавателя: «.$daster[‘name’].» Предмет: «.$daster[‘lesson’].»</li></ol>»;        
  8.          echo $result;
  9.          }  
  10.     }catch(PDOException $e){
  11.         echo»Ошибка подключения».$e->getMessage();
  12.     }
  13. }
  14. echo inner($connect);
 

Кавычки после ON неправильные. И в целом в составных именах составляющие нужно брать в отдельные кавычки, т.е. после SELECT тоже неправильно.

И здесь INNER JOIN – скорее всего из пушки по воробьям. По идее нужен LEFT JOIN.

 

Большое спасибо. Вопрос решил.

PHP:
  1. function inner($connect){
  2.     try{
  3.        $sql = «SELECT teacher.name, lesson.less FROM teacher INNER JOIN lesson ON teacher.id = lesson.teacher_id»;
  4.        $prepare = $connect->prepare($sql);
  5.        $prepare->execute();
  6.          while($daster = $prepare->fetch(PDO::FETCH_BOTH)){
  7.          $result = «<ol><li>Имя преподавателя: «.$daster[‘name’].» Предмет: «.$daster[‘less’].«</li></ol>»;        
  8.          echo $result;
  9.          }  
  10.     }catch(PDOException $e){
  11.         echo«Ошибка подключения».$e->getMessage();
  12.     }
 

Понятно. Просто не совсем понял, что Вы имели ввиду. Теперь разобрался. Спасибо!!!

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *