如何使用using关键字连接三个表并用mysql语法显示

omqzjyyz  于 2021-06-19  发布在  Mysql
关注(0)|答案(1)|浏览(376)

这就是我如何使用inner join连接表的方法

SELECT lab5enrollment.matricno, lab5student.stuname, 
lab5enrollment.courseid, 
lab5course.cname
FROM ((lab5enrollment
INNER JOIN lab5student ON lab5enrollment.matricno = lab5student.matricno)
INNER JOIN lab5course ON lab5enrollment.courseid = lab5course.courseid)
WHERE lab5enrollment.courseid = 'CSF3402';

这是我如何使用using关键字连接表,但我不知道如何连接三个表。。。

SELECT matricno, stuname, courseid, cname
FROM lab5enrollment
JOIN lab5student
USING (matricno) 
WHERE courseid = 'CSF3402';

我想观察一下使用内部连接和使用。。。

bvk5enib

bvk5enib1#

您可能应该倾向于使用带有显式连接的连接 ON 原因有很多。如果你想用 USING 在这里,那么以下应该起作用:

SELECT
    t1.matricno,
    t2.stuname,
    t1.courseid,
    t3.cname
FROM lab5enrollment t1
INNER JOIN lab5student t2
    USING (matricno)
INNER JOIN lab5course t3
    USING (courseid)
WHERE
    t1.courseid = 'CSF3402';

这是假设 lab5enrollment 以及 lab5student 两者都有同名的列 matricno ,然后呢 lab5student 以及 lab5course 两者都有一个名为 courseid .

相关问题