当前位置: 首页 > news >正文

网站成功案例设计品牌加盟网

网站成功案例设计,品牌加盟网,网站图片比例,销售型企业网站有哪些表关联是频率非常高的一种数据库操作#xff0c;在MySQL中#xff0c;这种JOIN操作有很多类型#xff0c;包括内联接、左外连接、右外连接等等#xff0c;而每种连接的含义都不一样#xff0c;如果死记硬背#xff0c;不仅很难记住#xff0c;而且也容易搞混淆#xff…表关联是频率非常高的一种数据库操作在MySQL中这种JOIN操作有很多类型包括内联接、左外连接、右外连接等等而每种连接的含义都不一样如果死记硬背不仅很难记住而且也容易搞混淆今天我们尝试使用图解的方式来讲解各种连接的内涵因为结合了具体的例子相信会让大家印象深刻。 MySQL中常见的表关联有如下几种 INNER JOINLEFT JOINRIGHT JOINFULL OUTER JOINLEFT JOIN EXCLUDING INNER JOINRIGHT JOIN EXCLUDING INNER JOINOUTER JOIN EXCLUDING INNER JOINCROSS JOIN 1 准备环境 先创建两张表一张是订单表一张是客户表订单表中的字段customer_id与客户表的主键关联。数据表创建完成后再往表里插入简单的测试数据 先是订单表 CREATE TABLE t_order (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,order_no int(11) DEFAULT NULL COMMENT 订单号,customer_id int(11) DEFAULT NULL COMMENT 客户id,PRIMARY KEY (id) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4;-- 插入数据 INSERT INTO t_order VALUES (1, 1001, 1); INSERT INTO t_order VALUES (2, 1002, 26); 然后是客户表 CREATE TABLE t_customer (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,customer_name varchar(255) DEFAULT NULL COMMENT 客户姓名 ,PRIMARY KEY (id) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4;-- 插入数据 INSERT INTO t_customer VALUES (1, John); INSERT INTO t_customer VALUES (2, Tom); 两张表中的数据分别如下 2 INNER JOIN INNER JOIN应该是最常用的表连接了它只返回两个表中满足关联条件的数据 以内连接的方式关联查询订单表和客户表 SELECT A.id AS A_id, A.order_no, A.customer_id, B.id AS B_id, B.customer_name FROM t_order A INNER JOIN t_customer B ON A.customer_idB.id 查询结果如下可以看出只返回了一行记录内连接可以理解为查询两个表的交集 3 LEFT JOIN LEFT JOIN是左连接它会返回左表中所有数据即使右表没有匹配行如果右表没有相匹配的记录则返回NULL SQL语句和查询结果如下 SELECT A.id AS A_id, A.order_no, A.customer_id, B.id AS B_id, B.customer_name FROM t_order A LEFT JOIN t_customer B ON A.customer_idB.id 可以看出左连接返回了左表的数据对于客户id为26的记录在客户表中并不存在所以它们的值为NULL。 4 RIGHT JOIN 而RIGHT JOIN是右连接跟左连接的逻辑类似只不过它以右表为基准进行关联它返回右表中所有数据即使左表没有匹配行如果左表没有相匹配的记录则返回NULL SQL语句和查询结果如下 SELECT A.id AS A_id, A.order_no, A.customer_id, B.id AS B_id, B.customer_name FROM t_order A RIGHT JOIN t_customer B ON A.customer_idB.id 它返回了客户表右表中的所有数据对于客户id为2的记录订单表中没有对应的数据所以相应的字段值为NULL。 5 FULL OUTER JOIN 对于上面提到的LEFT JOIN和RIGHT JOIN它们分别表示左外连接和右外连接完整的写法还需要加上OUTER关键字也就是LEFT OUTER JOIN和RIGHT OUTER JOIN。 除了左外连接和右外连接有时候还需要把两个表中的数据都查询出来也就是满外连接相当于是两个表的并集。目前使用的版本5.7还不支持这样的查询可以使用UNION来进行模拟 SQL语句和查询结果如下 SELECT A.id AS A_id, A.order_no, A.customer_id, B.id AS B_id, B.customer_name FROM t_order A LEFT JOIN t_customer B ON A.customer_idB.id UNION SELECT A.id AS A_id, A.order_no, A.customer_id, B.id AS B_id, B.customer_name FROM t_order A RIGHT JOIN t_customer B ON A.customer_idB.id 6 LEFT JOIN EXCLUDING INNER JOIN 返回左表有但右表没有的数据 SQL语句和查询结果如下 SELECT A.id AS A_id, A.order_no, A.customer_id, B.id AS B_id, B.customer_name FROM t_order A LEFT JOIN t_customer B ON A.customer_idB.id WHERE B.id IS NULL; 7 RIGHT JOIN EXCLUDING INNER JOIN 返回右表有但左表没有的数据 SQL语句和查询结果如下 SELECT A.id AS A_id, A.order_no, A.customer_id, B.id AS B_id, B.customer_name FROM t_order A RIGHT JOIN t_customer B ON A.customer_idB.id WHERE A.id IS NULL; 8 OUTER JOIN EXCLUDING INNER JOIN 返回左表和右表没有相互关联的数据 SQL语句和查询结果如下 SELECT A.id AS A_id, A.order_no, A.customer_id, B.id AS B_id, B.customer_name FROM t_order A LEFT JOIN t_customer B ON A.customer_idB.id WHERE B.id IS NULL UNION SELECT A.id AS A_id, A.order_no, A.customer_id, B.id AS B_id, B.customer_name FROM t_order A RIGHT JOIN t_customer B ON A.customer_idB.id WHERE A.id IS NULL 9 CROSS JOIN 它返回两个表的笛卡尔积也就是把两个表中的数据组合起来。 SQL语句和查询结果如下 SELECT A.id AS A_id, A.order_no, A.customer_id, B.id AS B_id, B.customer_name FROM t_order A CROSS JOIN t_customer B
http://www.hkea.cn/news/14465974/

相关文章:

  • 人工智能网站应怎么做手机网站建设动态
  • 一个虚拟主机做2个网站设计吧 网站
  • 自己做的网站别人查看seo优化是做什么的
  • 邳州网站开发app外包平台大概多少钱
  • 网店加盟全屏网站 图片优化
  • ui做标注的网站19年做哪个网站致富
  • 快速网站制作转转钓鱼链接怎么制作
  • 福建高速公路建设指挥部网站wordpress导入汉化包
  • 网站上线具体流程开网店流程图文详解
  • 网站开发汇报ppt模板四川省德阳市建设招投标网站
  • 青岛app网站开发html5软件下载手机版
  • 定兴做网站的wordpress 必装插件
  • 网站里面的视频功能怎么做网站开发主机的选择
  • 仿京东电商的网站开发报价wordpress圈子
  • 网站的营销策略知名的产品设计网站
  • 网站seo工作wordpress微信公众号开发教程
  • wordpress网站手机端自动引流免费app
  • 网络做网站如何盈利西客站网站建设
  • 天门市网站建设seo宜兴市建设局网站
  • 网站开发 0755...无锡网站制作
  • 临海市住房和城乡建设规划局 网站晚上做设计挣钱的网站
  • 公众号电影网站是怎么做的广州网站优化哪家快
  • 网站开发与设计论文宁波营销型网站建设首选
  • 大宇网络潍坊网站建设英文在线购物网站建设
  • 做网站需要什么cailiao为什么要建设应急管理网站
  • 广州制作网站wordpress主题 科技
  • 网站服务器查找山东胶州建设工程招标网站
  • ip网站查询服务器外贸营销推广方案
  • 1688网站简介佛山网站建设哪里好
  • 相同网站名服务好的普通网站建设