概述
数据仓储不像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时,查询订单编号,订单省份、用户名和区域表中的用户名。
相信看到这里大家已经可以看出两者的区别了吧,在实际进行数据查询时,一定要注意注意代码与代码之间的占位符和格式的正确,防止一片红色让人头大,理清逻辑才能写好正确的查询语句,在使用字符时记住一定要加英文的引号哦,要不然哭着找错误。
简单的说,联表查询就是独立的表格之间,将有关系的值联系起来,找到想要的数据;而嵌套查询就是在一个数据表中找到你想要的条件匹配的值,单身狗不配在嵌套查询中存在,只能在联表查询中存在。
从产品工作来说,战略层定大方向需要你进行数据分析,自己会查询数据,就不会因为与技术人员沟通时出现分歧导致得到的数据不准确,无法进行准确的数据分析,想要达到后端和数据类产品经理,为企业制定项目规划并维持产品运营,学会数据查询方式得出想要的数据,必然躲不过数据收集、分析、整理,在评审会上用客观的数据说话,为企业提供本质的需求。
最后
以上就是大意自行车为你收集整理的联表查询和嵌套查询—读懂数据库仓储的全部内容,希望文章能够帮你解决联表查询和嵌套查询—读懂数据库仓储所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复