MySQL联结表
转载请注明出处 😃!
手动反爬:MySQL联结表(WHERE,AND,PK-FK,INNER JOIN)
https://blog.csdn.net/Lyun911/article/details/111417111
注:以下使用 MySQL 演示
1 写在前面
SQL最强大的功能之一就是能在数据检索查询的执行中联结(join)表。
联结是利用SQL的SELECT能执行的最重要的操作,很好地理解联结及其语法是学习SQL的一个极为重要的组成部分。
1.1 举个栗子
【以一个现实世界中的事件为例:】
假如有一个包含产品目录的数据库表,其中每种类别的物品占一行。对于每种物品要存储的信息包括产品描述和价格,以及生产该产品的供应商信息。
现在,假如有由同一供应商生产的多种物品,那么在何处存储供应商信息(如,供应商名、地址、联系方法等)呢?
因为同一供应商生产的每个产品的供应商信息都是相同的,对每个产品重复此信息既浪费时间又浪费存储空间。
如果供应商信息改变(例如,供应商搬家或电话号码变动),只需改动一次即可。
如果有重复数据(即每种产品都存储供应商信息),很难保证每次输入该数据的方式都相同。不一致的数据在报表中很难利用。
1.2 设计表的核心理念
相同数据出现多次决不是一件好事,此因素是关系数据库设计的基础。关系表的设计就是要保证把信息分解成多个表,一类数据一个表。各表通过某些常用的值(即关系设计中的关系(relational))互相关联。
1.3 怎么实现(通过PK-FK链接)
外键(foreign key)外键为某个表中的一列,它包含另一个表的主键(primary key),定义了两个表之间的关系。这样做的好处如下:
- 由于数据不重复