数据仓储不像java、C++、JS等开发语言,而是数据库仓储更多用于对接产品工作,查询数据、分析数据、得出产品未来发展方向,与产品经理相关联,而联表查询和嵌套查询作为数据库基础的查询方法,学习使用,方便技术人员从数据库的角度收集数据、给产品经理分析、整理需求。

相信大家最烦的一件事情就是常常遇到大片知识盲区,而数据库就是我们的知识盲区之一,在工作的时候通过会遇到两种情况,一种是工作过于繁重,需要调取数据时需要自己调取,另一种就是由于与产品经理沟通所得出的数据分析结果无法满足自己的使用,身为产品经理的我们只能被迫进行数据收集、分析。

因此,这就让我们有必要学习数据查询相关的知识咯,防止我们看到数据库就害怕,看到数据库就瑟瑟发抖,因此以下为各位产品经理介绍联表查询和嵌套查询。

一、联表查询和嵌套查询是什么?

联表查询:

分为两表连接查询和多表连接查询;

连接又分为内连接和外连接,

内连接就是使用比较运算符(包括=、>、<、<>、>=、<=、!>和!<)进行表间的比较操作,查询与连接条件相匹配的数据。根据比较运算符不同,内连接分为等值连接和不等连接两种。 1. 仅将两个表中满足连接条件的行组合起来作为结果集。 2. 关键: inner join(也可叫join) 3. 概念:在连接条件中使用等于号(=)运算符,其查询结果中列出被连接表中的所有列,包括其中的重复列。

外连接分为: 1. 左连接(LEFT JOIN) 2. 右连接(RIGHT JOIN) 3. 全连接(FULL JOIN) ,常用LEFT JOIN。4. 概念:返回左表中的所有行,如果左表中行在右表中没有匹配行,则结果中右表中的列返回空值null。

嵌套查询:

指在一个外层查询中包含有另一个内层查询。. 其中外层查询称为主查询,内层查询称为子查询。. SQL允许多层嵌套,由内而外地进行分析,子查询的结果作为主查询的查询条件。子查询中一般不使用order by子句,只能对最终查询结果进行排序

二、联表查询和嵌套查询的区别

联表查询可以理解为处于统一层级的互动,联表查询的数据之间的关系不需要确定表的建立时间,实体的所有信息通常都存储在表中。

而嵌套查询就是我们俗称的俄罗斯套娃,即一个查询内包含一个或多个子查询。

实例

(1)SELECT 查询字段(多个表 表的别名:字段名) FROM关联表 LEFT JOIN 被关联表 ON 关联关系的表达式=相同含义相同值。

(2)SELECT * FROM ...  LEFT JOIN ... ON... (SELECT * FROM ...  WHERE...)正常的FROM是一个表,用于查询一个结果集,给一个别名来替代这个表。

从上面可以看出(1)是联表查询,而(2)是嵌套查询;联表查询可以讲查询的每个条件当成一个同级的表,而嵌套查询则当成一个数据表使用。

三、联表查询和嵌套查询的实际运用

如果看到这里小伙伴们还是不太懂,就实际运用给大家看吧

本人自己做的供应链管理系统查询

联表查询

SELECT customer_order_no, order_phone,user_name,customer_order_money

FROM yc_order WHERE customer_order_money BETWEEN 50 AND 80

GROUP BY customer_order_no, order_phone,user_name

从订单表中查询用户订单编号,手机号、用户名称、用户订单金额,筛选条件为订单金额为50到80元,并按照顾客订单编号、手机号和用户名分类。

嵌套查询

SELECT order_no,order_province,user_name,b.area_name FROM yc_order as a

LEFT JOIN (SELECT * FROM yc_area WHERE area_type=1) as b

ON a.order_province=b.area_code WHERE a.order_no=1116277441689450414

从订单表连接区域表,并查询区域表中区域类型为1的等于订单表中的省份,当订单编号为1116277441689450414时,查询订单编号,订单省份、用户名和区域表中的用户名。

相信看到这里大家已经可以看出两者的区别了吧,在实际进行数据查询时,一定要注意注意代码与代码之间的占位符和格式的正确,防止一片红色让人头大,理清逻辑才能写好正确的查询语句,在使用字符时记住一定要加英文的引号哦,要不然哭着找错误。

简单的说,联表查询就是独立的表格之间,将有关系的值联系起来,找到想要的数据;而嵌套查询就是在一个数据表中找到你想要的条件匹配的值,单身狗不配在嵌套查询中存在,只能在联表查询中存在。

从产品工作来说,战略层定大方向需要你进行数据分析,自己会查询数据,就不会因为与技术人员沟通时出现分歧导致得到的数据不准确,无法进行准确的数据分析,想要达到后端和数据类产品经理,为企业制定项目规划并维持产品运营,学会数据查询方式得出想要的数据,必然躲不过数据收集、分析、整理,在评审会上用客观的数据说话,为企业提供本质的需求。

联表查询和嵌套查询—读懂数据库仓储相关推荐

  1. Database之SQLSever:SQL命令实现查询之多表查询、嵌套查询、分页复杂查询,删除表内重复记录数据、连接(join、left join和right join简介及其区别)等案例之详细攻略

    Database之SQLSever:SQL命令实现查询之多表查询.嵌套查询.分页复杂查询,删除表内重复记录数据.连接(join.left join和right join简介及其区别)等案例之详细攻略 ...

  2. 3.4 《数据库系统概论》之数据查询---SELECT(单表查询、连接查询、嵌套查询、集合查询、多表查询)

    文章目录 0.前言 1.思维导图 2.Student/SC/Course表数据及结构 3.SELECT语句的一般格式 4.单表查询 (1)选择表中的若干列 ① 查询指定列 ② 查询全部列 ③ 查询经过 ...

  3. 笔记:3.4 《数据库系统概论》之数据查询---SELECT(单表查询、连接查询、嵌套查询、集合查询、多表查询)

    对 3.2 数据查询-SELECT(单表查询.连接查询.嵌套查询.集合查询.多表查询)的转载与学习笔记: 0.前言 本篇文章是对<数据库系统概论>王珊老师主编的数据库查询SELECT部分做 ...

  4. MySQL 基础 -- 多表关系(一对一、1对多(多对一)、多对多)、多表查询(内连接、外连接、自连接、子查询(嵌套查询)、联合查询 union)、笛卡儿积

    文章目录 1. 多表关系 1.1 一对多 1.2 多对多 1.3 一对一 2. 多表查询 2.1 数据准备 2.2 概述 2.3 笛卡尔积 2.4 多表查询分类 3. 内连接 3.1 示例1:查询每一 ...

  5. mysql练习-数据查询之嵌套查询

    将一个查询块嵌套在另一个查询块的WHERE子句或HAVING短语的条件中的查询称为嵌套查询. 涉及到多个表的查询,除了可以使用多表连接查询以外,还可以利用嵌套子查询来完成. 由于连接查询比较耗时,当表 ...

  6. 子查询(嵌套查询)——MySQL

    文章目录 子查询(嵌套查询) 标准子查询 列子查询(多行子查询) 行子查询 select后面的子查询 from后面的子查询 exists后面(相关子查询) 子查询(嵌套查询) 出现在其他语句中的sel ...

  7. sql镶嵌查询_SQL 嵌套查询

    说到嵌套查询,首先得理解嵌套查询是什么意思,简单来说就是,一个查询语句可以嵌套在另外一个查询语句的where子句中.外层的查询称为父查询(主查询),内层的查询称为子查询(从查询). 嵌套查询的工作方式 ...

  8. 数据库作业:SQL练习4 - SELECT(连接查询、嵌套查询)

    学习了连接查询和嵌套查询. 今天启动SQL server,显示无法连接到服务器,重新打开软件还是一样,后来通过搜索重新启动了SQL server的服务,就可以了. 此电脑右键-管理-展开服务与应用程序 ...

  9. 数据库 - 连接查询、嵌套查询、集合查询

    连接查询 连接查询:同时涉及多个表的查询 连接条件或连接谓词:用来连接两个表的条件 一般格式: [<表名1>.]<列名1> <比较运算符> [<表名2> ...

最新文章

  1. linux下git的HEAD,Git工具详解以及与GitHub的配合使用
  2. 一个黑客与电脑白痴的聊天纪录!!!
  3. lstm不收敛_20道深度学习面试题,有你不知道的吗?
  4. KMP算法--字符串模式匹配算法
  5. GNOME Shell Extensions开发介绍
  6. [Leetcode][第404题][JAVA][左叶子之和][DFS][BFS]
  7. 使用try-catch-finally处理异常---java
  8. 零基础自学SQL课程 | SQL中的日期函数大全
  9. 魔兽世界拍卖行稳定服务器,魔兽世界TBC:大量玩家拍卖行卡到抓狂,分析其中可能的原因...
  10. U盘文件夹被病毒隐藏了
  11. 应用回归分析第五版pdf百度网盘_常用软件分享PDF转换word/excel/text等
  12. 颜值测试API,微软小冰颜值,颜值API
  13. android极光推送被杀,关于APP进程被杀死,极光推送收不到消息的解决办法
  14. 解决vue项目背景图片在IE和火狐上不显示的问题
  15. 机器人编程学的是什么
  16. 【python】计算miou
  17. 高斯模糊磨皮——ps
  18. Java_集合—Map
  19. Jenkins内存占用过高的问题
  20. 被骗几十万总结出来的Ddos攻击防护经验!(转载)

热门文章

  1. c语言编写水仙花数代码
  2. MATLAB 2013a 汉化画面
  3. NeurIPS论文解读|Decision Transformer: 通过序列建模解决离线强化学习问题
  4. 移动端选择时间时禁止软键盘弹出
  5. 周鸿祎:可穿戴设备将带来安全问题
  6. 【Visual c++】+【EasyX】游戏组件1 移动的小人
  7. 2020年南开大学软件学院夏令营
  8. 《optimizing software in c++》读书笔记(一)
  9. java 遍历map并比较值_Java遍历Map,List的不同方法,并比较其性能
  10. linux 服务器 硬盘测试工具,Linux 下的硬盘读写速度测试工具