inner join on 加条件和where加条件_MySQL ------ 联结(join)(内联结 inner join)(十四)...

联结(join) : 一种机制,在数据检索查询中执行,将表与表之间关联起来

说到将表关联起来,就有了主外键 ,为啥会有来,因为只用一个表很难做成一个系统,当然也可以,这样的话这个表肯定不符合建表的三大范式,所以一般都是尽量满足三大范式,让数据库不冗余,表也很清爽,就向软件中的高内聚低耦合,不容易崩,还有就是当你走了,下一个在来他的理解成本也会降低,(其实各有各的好处吧,毕竟查一个表是最简单的),因此分开后,表与表之间的关联就要靠主外键,

外键(foreign key): 外键为某个表中的一列,它包含另一个表的主键值,定义了两个表之间的关系。

主键(primary key): 能够唯一区分表中每一个行的一个列

像 供应商与产品,他们之间肯定会靠主外键互相关联,如果放在一个表里

  1、同一个供应商生产的每个产品它的供应商信息都是相同的,重复的浪费时间也浪费空间

  2、如果供应商的信息改变,之前的存储的商品也要改,不够灵活,容错性小,维护成本高

  3、如果有重复数据。很难保证每次输入该数据的方式都相同, 使用不方便,数据可能重复,出现不一致

还有就是,关系型数据库设计的基础,就是避免出现重复数据,关系表的的设计就是把信息分解成多个表,一类数据一个表,各表通过某些常用的值相互关联,关系数据可以有效的存储和方便地处理,因此关系数据库的可伸缩性远比非关系数据库要好。

可伸缩性(scale):能够适应不断增加的工作量而不失败。设计良好的数据库或应用程序称之为可伸缩性好(scale well)

如上所述,分解数据为多个表可以更有效的存储,更方便地处理,并且具有更大的可伸缩性,那么如何使用一条语句进行查询这多表的数据来,你可能想到了之前将的子查询,但是本篇的文章可是联结,所以这种用来在一条select 语句中关联表的机制称为联结,在运行时要使用正确的行(常用的就是主外键)

注意:

  1、联结不是物理实体,他在实际数据表

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值