mysql 在连接表是的要点

思路:分析需求,分析字段来自哪些表 (连接查询)

           确定使用哪种连接查询?  确定交叉点(这两个表中哪些数据是相同的)

           判断条件 such as  学生表中的studentNO = 成绩表中studentNO(记得要加别名)

           

连接三张表

SELECT s.`StudentNO`,`StudentResult`,`StudentName`,`SubjiectName`

FROM `student` s
INNER JOIN `result` r
ON s.`StudentNO`=r.`StudentNO`
INNER JOIN `subject` sub
WHERE r.`SubjectNO`=sub.`SubjectNO`

所有的字符都要是英文的 

要给表起别名 方便  用as or 空格

在连接三张表以上时提供一种思路:假设存在一种多张表查询,慢慢来不要想着一口吃成一个大胖子。先查询两张表然后再慢慢加

 

SELECT s.`StudentNO`,`StudentResult`,`StudentName`
FROM `student` s
RIGHT(left) JOIN `result` r

ON s.`StudentNO`=r.`StudentNO`

左和右是不一样的

left join :会从左表中返回所有的表,即使右表没有匹配

right join :会从右表中返回所有的表,即使左表没有匹配

                         ------仅供参考

mysql 在连接表是的要点

上一篇:Linux 学习笔记_12_Windows与Linux文件共享服务_1.1_--Samba(上)


下一篇:mysql日志管理,备份和恢复,断点