一.在内连接中的等值连接中,适用于两个表,且两个表中都有共同的一项,根据这一项来连接两表中其他的项,但是如果不在where中约束两表中共同的一项相等,会产生笛卡尔积。
比如select stuname,score from t_student,t_scores where t_student.id=t_sccores.stu_id;
标准的内连接是 select stuname,scores from t_student inner join t_scores on
T_student.id=t_scores.stu_id;
二.左连接会全部显示左边的信息,比如 select stuname,score from t_student
Left join t_scores on t_student.id=t_scores.stu_id;
三.只要是几个表的连接查询,都要在其中直接连接的两个表中找到相同的项,作为纽带,查询其他的列。
四.表之间的关系包括1对1,1对多,多对多,其中1对1 时比如建立人的表和身份证表,他们是1对1的,在建立身份证表时,表的id号不是自动增长的,并且id即使身份证表的主键,也是人表的外键,也就是说id不但不能重复,还要一定时人表中存在的,1对1的。
在1对多时,比如人表和银行卡表,一个人可以有多个银行卡,但是一个银行卡只能属于一个人,所以把人的id放在银行卡表中,作为人表的外键,也就是说,在1对多时,在多的表中存放1的主键。
在多对多时,比如学生表和课程表,一个学生可以选多个课,一个课可以有多个学生上课,这就是多对多的情况,需要建立第三张关系表,在关系表中包括学生表和课程表的俩主键,这俩主键也是关系表的主键,