leftjoin多表联合查询_多张表的数据查询与获取

1. 表的加法

2f86fc8af1289ff625babb5325494b09.png

e9ec4a15338a0f28d18f5fb4dc01dc5e.png

5980a5d4dfa68cdf1d78aaf6537716c2.png

2. 表的联结

不同的表通过共有数据进行关联。

68ecad26722da8e8643878b332d850b0.png

- 什么是交叉联结?(Cross Join)使用率在现实工作运用中较少

交叉联结的结果两张表的乘积。

e16ec0614fc96c78690e1b43cff8d9a0.png

例:扑克牌(13张牌对应4个花色,去除大小王,总共52张牌)

- 什么是内联结? (Inner join)

d184b2610855d7b4e92761f89a4bd016.png

6db8d4dc4ef61cf7c6947d130d6fddc5.png

e6b4a6aa87c03bc33b410cf900e9d9c3.png

- 什么是左联结?(left join)

左侧的表将会是主表,右表只选择与左边相同的数据

5bd2417f1d25613ab35dda8d40b8aafa.png

- 什么是右联结?(Right join)

相似于左联结

bfd7900c66f77e3c358ac39c458ef0b1.png

- 什么是全联结?(full join)

MySQL不支持全联结

51b556bc2b3d3d445c1a82f8c62bcc2d.png

3. 多表查询如何在业务中应用? 常见面试题!!!

dc4f6822de017c55747c7f45f4b085e0.png

e42bbffbab53dbbba5325f6655085ac2.png

06000a2f07dc1d1ae02543a257585541.png

4. case 表达式

帮助解决复杂查询问题,等同于条件判断函数,判断某行数据是否符合条件。

每行的when将逐行进行直到满足条件为止,否则直到最后else后结束。

305a204246825940dbd95135b25b5553.png

cf64892afc1b15f593fd48580e084f90.png

Else可不写表示为空值,End必须写。

case表达式可以写到任意SQL表达式中。

b5e1c54b0749bf3310fb9dcd40def0b2.png

假如课程号和课程名称不是一对一的关系时,将会改变分组结果。当用多个列来分组时,这几个列的值全部相同才算一组。

edb8e408d938a83d0dcf154b9165644a.png
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值