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

东莞网站建设 牛魔网信息系统开发流程

东莞网站建设 牛魔网,信息系统开发流程,优设设计师网站,在线生成个人网站免费INNER JOIN、LEFT JOIN 和 RIGHT JOIN 都是多表连接的不同方式,它们的主要区别在于它们如何处理表之间不匹配的数据。下面分别介绍它们的区别。 目录 一.多表连接查询 INNER JOIN(内连接) LEFT JOIN(左连接) RIGHT…

INNER JOINLEFT JOINRIGHT JOIN 都是多表连接的不同方式,它们的主要区别在于它们如何处理表之间不匹配的数据。下面分别介绍它们的区别。


目录

一.多表连接查询

INNER JOIN(内连接)

LEFT JOIN(左连接)

RIGHT JOIN(右连接)

二.区别

三.自连接


一.多表连接查询

▐ INNER JOIN(内连接)

当你在使用 JOIN 时不明确指定是 LEFT JOIN 还是 RIGHT JOIN,SQL 默认会执行 INNER JOIN,即内连接。

  • 工作原理:只返回在两个表中都有匹配记录的行。如果某一行在其中一个表中没有匹配的记录,它将不会出现在结果集中。
  • 特点:只返回匹配的记录

例子:

  • Product表

    product_idproduct_name
    1Laptop
    2Smartphone
    3Tablet
  • Sales表

    sale_idproduct_idyearprice
    1120231000
    222023800
  • INNER JOIN查询SQL语句

    SELECT Product.product_name, Sales.year, Sales.price 
    FROM Product 
    INNER JOIN Sales 
    ON Product.product_id = Sales.product_id;
  • 结果

    product_nameyearprice
    Laptop20231000
    Smartphone2023800

注意Tablet 没有出现在结果中,因为它在 Sales 表中没有匹配的销售记录。


▐ LEFT JOIN(左连接)

  • 工作原理:返回左表的所有记录,即使右表中没有匹配的记录。如果右表中没有对应的行,结果中的右表字段将会是 NULL
  • 特点:返回左表的所有记录,以及右表中匹配的数据。

例子:

  • LEFT JOIN查询SQL语句

    SELECT Product.product_name, Sales.year, Sales.price 
    FROM Product 
    LEFT JOIN Sales 
    ON Product.product_id = Sales.product_id;
  • 结果

    product_nameyearprice
    Laptop20231000
    Smartphone2023800
    TabletNULLNULL

注意Tablet 出现在结果中,但它在 Sales 表中没有对应的销售记录,因此 yearprice 显示为 NULL


▐ RIGHT JOIN(右连接)

  • 工作原理:返回右表的所有记录,即使左表中没有匹配的记录。如果左表中没有对应的行,结果中的左表字段将会是 NULL
  • 特点:返回右表的所有记录,以及左表中匹配的数据。

例子:

  • RIGHT JOIN查询SQL语句

    SELECT Product.product_name, Sales.year, Sales.price 
    FROM Product 
    RIGHT JOIN Sales 
    ON Product.product_id = Sales.product_id;
  • 结果

    product_nameyearprice
    Laptop20231000
    Smartphone2023800

注意:这个例子中的 RIGHT JOININNER JOIN 的结果相同,因为 Sales 表中的所有 product_idProduct 表中都有匹配项。如果 Sales 表中有多余的记录,RIGHT JOIN 会包含它们,且 Product 表的字段为 NULL


二.区别

JOIN 类型描述结果返回的数据
INNER JOIN只返回两个表中都存在匹配数据的记录。仅匹配的行
LEFT JOIN返回左表的所有数据,即使右表中没有匹配的记录,右表的列会为 NULL左表的所有行
RIGHT JOIN返回右表的所有数据,即使左表中没有匹配的记录,左表的列会为 NULL右表的所有行
  • INNER JOIN:左表和右表中都匹配的部分。
  • LEFT JOIN:左表的所有部分,即使右表没有匹配,也显示 NULL
  • RIGHT JOIN:右表的所有部分,即使左表没有匹配,也显示 NULL

选择哪种 JOIN 方式取决于希望在查询中保留哪些表的数据。如果想要保留所有的左表数据,使用 LEFT JOIN;如果想要保留所有右表数据,使用 RIGHT JOIN;如果只想要两者都有匹配的数据,使用 INNER JOIN


三.自连接

平常可能还会用到自连接,就像下题这样,我们需要在这个表中对比不同行的数据,就需要使用自连接

就像这里,为这个表使用俩个别名,通过 join 来完成

SELECTW1.id
FROM Weather W1
JOINWeather W2
ONDATEDIFF(W1.recordDate, W2.recordDate) = 1
WHEREW1.Temperature > W2.Temperature



 本次的分享就到此为止了,希望我的分享能给您带来帮助,创作不易也欢迎大家三连支持,你们的点赞就是博主更新最大的动力!如有不同意见,欢迎评论区积极讨论交流,让我们一起学习进步!有相关问题也可以私信博主,评论区和私信都会认真查看的,我们下次再见

http://www.yayakq.cn/news/329474/

相关文章:

  • 帝国cms 7.2 门户网站模版给厂家做代理上什么网站
  • 高端品牌网站建设有哪些注意事项杭州市建设局网站
  • 网站开发保密协议范本下载justnews主题wordpress
  • 线上做图的网站wordpress 封禁账号
  • 网站规划的流程帝国cms 商城网站视频教程
  • 个人网站设计成品北京 企业展厅设计公司
  • 不忘初心 继续前进网站怎么做营销系统软件
  • 广州木马网站建设公司怎么样销售推广
  • 企业标准网站模板网站设计软件下载
  • 网站开发体系如何做网站连接
  • 合肥微信网站建设有限责任公司与有限公司的区别
  • 网站要怎么做吸客户引眼球网站建设业务需求文档
  • 390元做微信小程序 公众号 网站腾讯邮箱企业邮箱官网
  • 北京建设网官方网站企业网站带商城源码
  • 网站改版竞品分析怎么做天津画册设计公司
  • 个人网页设计制作网站模板广告创意设计模板
  • 两学一做11月答题网站制作网页最简单的方法
  • 目标网站都有哪些内容redis 缓存 wordpress
  • 建网站怎么起名字提升自己网站
  • 网站做seo安全吗广东省建设信息网三库一平台
  • 乌兰县网站建设公司网站的营销与推广
  • 青岛网站设计微动力网站关键词搜索排名怎么做
  • 云主机可以用来做什么合肥网站优化搜索
  • 扁平式网站网站设计如何自学
  • 学院网站源码阳江市网络问政平台登录
  • 大连自己的网站网站悬浮窗口
  • 在哪儿可以找到网站开发的需求铁岭百姓网免费发布信息网
  • 织梦免费网站模块下载国内最大的c2c网站
  • 怎么做网站的代理商长沙关键词优化平台
  • 网站域名价格 优帮云免费房屋设计装修