ChaunceyF 发表于 2017-3-13 17:16:34

mysql为何不给表取名的写法会显示其他表的数据?

本帖最后由 ChaunceyF 于 2017-3-13 17:18 编辑

以下是同一个查询需求,用两种方式写查询语句,区别就是是否对表进行命名。
然而不对表进行命名的写法1,产出的结果会包含其他表的数据,这是为什么?


写法1: 结果如图1SELECT * from student
INNER JOIN score on student.s=score.s
inner join course on score.c=course.c
inner join teacher on course.t=teacher.t
where teacher.tname="张三"



写法2:结果如图2
select a.* from student a
INNER JOIN score b on a.s=b.s
INNER JOIN course c on b.c=c.c
INNER JOIN teacher d ON c.t=d.t
where d.tname="张三"

kider 发表于 2017-3-14 17:28:23

不写就是全列
页: [1]
查看完整版本: mysql为何不给表取名的写法会显示其他表的数据?