加入查询不获取任何数据

时间:2015-11-12 04:21:58

标签: php mysql join

我正在尝试编写我的第一个连接查询,这将帮助我加入两个不同的表,一个用于学生,另一个用于subjects.This是我的第一个连接查询,似乎它不起作用,任何人都可以指出错误.Php没有显示任何错误或工作

enter image description here enter image description here

   try{
     $pdo=new PDO("mysql:host=localhost;dbname=mydb",'root','');
     $sql="SELECT * FROM students LEFT JOIN subjects WHERE students.courseid=subjects.courseid";
     $conn=$pdo->prepare($sql);
      if($conn->execute()){
        $results=$conn->fetchAll();
        print_r($results);
      }
     }catch(PDOException $e){
         echo $e->getMessage();
     }

2 个答案:

答案 0 :(得分:2)

在查询中将WHERE替换为ON

SELECT * FROM students LEFT JOIN subjects ON students.courseid=subjects.courseid

See Mysql JOIN Syntax

答案 1 :(得分:2)

假设学生的表名是学生而你的科目表是主题,那么我认为它应该是:

SELECT * FROM students LEFT JOIN subjects on students.courseid=subjects.subjectid

因为你的科目表中有一个subjectid而不是courseid