MySQL社区

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
查看: 1541|回复: 1

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

[复制链接]
发表于 2017-3-13 17:16:34 | 显示全部楼层 |阅读模式
本帖最后由 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="张三"

1.png
2.png
发表于 2017-3-14 17:28:23 | 显示全部楼层
不写就是全列
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|申请友链|小黑屋|Archiver|手机版|MySQL社区 ( 京ICP备07012489号   
联系人:周生; 联系电话:13911732319

GMT+8, 2024-3-28 16:45 , Processed in 0.173366 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表