1,内连接
内连接:内连接也叫连接,还可以被称为普通连接或者自然连接,内连接是从结果表中删除与其他被连接表中没有匹配行的所有行,所以内连接可能会丢失信息。由于两表之间没有相同数据,会造成数据的缺失.
sql语句: select * from A inner join B on A.x=B.x
2.左连接
将返回右表的所有行。如果左表的某行在右表中没有匹配行,则将为右表返回空值左连接
select *from A LEFT JOIN B ON A.x=B.x
以A为主表,B没数据为null
此表中A全部包含,B数据缺失
3.右连接
将返回右表的所有行。如果右表的某行在左表中没有匹配行,则将为左表返回空值;
以B为主表,A中没数据的为null
select *from A right JOIN B ON A.x=B.x
此表中B全部包含,A数据缺失
4,全外连接
完整外部联接返回左表和右表中的所有行。当某行在另一个表中没有匹配行时,则另一个表的选择列表列包含空值。如果表之间有匹配行,则整个结果集行包含基表的数据值。
select *from A full JOIN B ON A.x=B.x
5,笛卡尔积连接
交叉连接即笛卡尔积,结果为A×B
select *from A cross JOIN B
这种连接将包含A,B组合的各种情况.