关于mysql中的left join和left outer join的区别

关于mysql中的left join和left outer join的区别,第1张

LEFT JOIN是LEFT OUTER JOIN的简写版

内连接(INNER JOIN) :只连接匹配的行 

左外连接( LEFT JOIN 或LEFT OUTER JOIN) :包含左边表的全部行(不管右边的表中是否存在与它们匹配的行),以及右边表中全部匹配的行

右外连接( RIGHT JOIN 或RIGHT OUTER JOIN) :包含右边表的全部行(不管左边的表中是否存在与它们匹配的行),以及左边表中全部匹配的行

全外连接( FULL OUTER JOIN ) :包含左、右两个表的全部行,不管另外一边的表中是否存在与它们匹配的行         

交叉连接        生成笛卡尔积-它不使用任何匹配或者选取条件,而是直接将一个数据源中的每个行与另一个数据源的每个行都一一匹配( 开发中避免使用 )

内连接inner join的举例说明 :

select * from  t_institution i

inner join  t_teller t

on  i.inst_no = t.inst_no

where i.inst_no = "5801"

其中inner可以省略

等价于早期的连接语法

select * from t_institution i, t_teller t

where i.inst_no = t.inst_no

and i.inst_no = "5801"

左外连接left outer join的举例说明:

select *  from  t_institution i

left outer join  t_teller t

on  i.inst_no = t.inst_no

其中outer可以省略

右外连接right outer join的举例说明:

select *  from  t_institution i

right outer join t_teller t

on  i.inst_no = t.inst_no

其中outer可以省略

全外连接full outer join的举例说明:

select *  from  t_institution i

full outer join  t_teller t

on  i.inst_no = t.inst_no

用mysql查询出字段中的前几个字可以用left()方法,

如果要查一个字段的前50个字符,sql语句举例:

select left(table_column,50)  from   table_name

left(table_column,50) 表示截取table_column左边的50个字符

扩展资料

sql中截取字符串的相关函数介绍:

1、left(name,4)截取左边的4个字符

列:SELECT LEFT(201809,4) 年

结果:2018

2、right(name,2)截取右边的2个字符

SELECT RIGHT(201809,2) 月份

结果:09

3、SUBSTRING(name,3) 截取name这个字段 从第三个字符开始,之后的所有个字符

SELECT SUBSTRING('1234567',3)

结果:34567

4、SUBSTRING(name, -4) 截取name这个字段的第 4 个字符位置(倒数)开始取,直到结束

SELECT SUBSTRING('1234567',-4)

结果:4567

在某些数据库中, left join 称为 left outer join。

left join 关键字是从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7191374.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-02
下一篇 2023-04-02

发表评论

登录后才能评论

评论列表(0条)

保存