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

北京市朝阳区网站制作友情链接的作用大不大

北京市朝阳区网站制作,友情链接的作用大不大,ui设计培训排名,定制公司网站建设目录 一、什么是笛卡尔积? 二、什么是联合查询? 三、内连接 3.1 简介 3.2 语法 3.3 更多的表 3.4 操作演示 四、外连接 4.1 简介 4.2 语法 4.3 操作演示 五、自连接 5.1 简介 5.2 自连接非必要不使用 六、子查询(嵌套查询) 6.1 简介 6.…

目录

一、什么是笛卡尔积?

二、什么是联合查询?

三、内连接

3.1 简介

3.2 语法

3.3 更多的表

3.4 操作演示

四、外连接

4.1 简介

4.2 语法

4.3 操作演示

五、自连接

5.1 简介

5.2 自连接非必要不使用

六、子查询(嵌套查询)

6.1 简介

6.2 in 和 exists 关键字

6.3 子查询可能让简单的语句变复杂

七、合并查询

7.1 简介

7.2 合并查询可能让简单的语句变复杂

八、MySQL 中各个关键字的执行顺序


一、什么是笛卡尔积?

        笛卡尔积(Cartesian product)是一种数学概念,用于描述两个或多个集合之间的组合。它表示为两个或多个集合的乘积,其中每个元素都来自不同的集合。

        在编程中,笛卡尔积通常用于描述两个或多个数据集合之间的组合。

编程中使用笛卡尔积,需要注意以下两点:

实际开发中,使用笛卡尔积需要慎重,需要预估笛卡尔积后的结果集的规模,避免规模过大。
通常表与表之间存在关联关系,才可以进行笛卡尔积。没有关联关系的数据得出的笛卡尔积,通常也没有意义。

二、什么是联合查询?

        在MySQL中,联合查询是一种查询多个表的多个列的查询,通过取笛卡尔积,这些表和列被组合成一个结果集。联合查询通常用于查询多个表之间的关联数据。

联合查询的常见方式包括:内连接、外连接、自连接、子查询(嵌套查询)、合并查询


三、内连接

3.1 简介

        内连接是查询两个表或多个表之间的关联数据,返回两个表之间的交集数据。内连接是默认的连接类型,如果不指定连接类型,那么查询默认为内连接

3.2 语法

基本语法:select * from 表1 join 表2 on 关联条件;
基本语法:select * from 表1,表2 where 关联条件;
释义:

根据关联条件,全列查询指定表的笛卡尔积。

以上两种写法效果一致。

可以指定别名。

以上语法只进行了基本的查询,后续往往需要根据需要根据需求对表的内容进行精简

查询和精简步骤:

1、进行笛卡尔积

2、指定表之间的关联条件

3、指定结果集的筛选条件
4、指定需要打印的列(对需要打印的列进行精简或聚合运算)

join on

语法:

select 需要打印的列名... from 表1 join 表2 on 关联条件 and 结果集的其他筛选条件;

where语法:

select 需要打印的列名... from 表1,表2 where 关联条件 and 结果集的其他筛选条件;

3.3 更多的表

在超过两个表做笛卡尔积时,两种语法分别是怎样添加对应语句的?

假设此时有三个表做笛卡尔积:

join on 语法:

select 需要打印的列名...

from 表1 join 表2 on 关联条件 join 表3 on 关联条件

and 结果集的其他筛选条件;

where 语法:

select 需要打印的列名...

from 表1,表2,表3 where 关联条件,关联条件 

and 结果集的其他筛选条件;

        第一种写法清晰地表达了表之间是什么关联条件;而第二种写法则更为简洁,但表之间的关联条件却写成一团;两种写法各有各的优点。

3.4 操作演示


四、外连接

4.1 简介

        外连接也是查询两个表之间的关联数据,但有所不同的是,内连接查询的是两个表的交集,而外连接则会以一侧的表为主,显示所有列

4.2 语法

        外连接需要使用 left join 或 right join 子句指定连接方向。使用 left join 表示完全显示左侧表,称为左外连接;使用 right join 表示完全显示右侧表,称为右外连接。

语法:

select 需要打印的列名...

from 表1 left join 表2 on 关联条件 

and 结果集的其他筛选条件;

释义:根据关联条件和结果集的其他筛选条件,以指定的左侧表为主,查询指定表中指定的列数据。

4.3 操作演示


五、自连接

5.1 简介

        自连接是指一个表和自己进行笛卡尔积,这种查询方式应用场景不多,在需要将行关系转化成列关系时可以使用

语法:

select * from 表名 as 别名1,表名 as 别名2;
释义:

指定一个表和自己进行笛卡尔积,并打印结果集。

由于在同一个语句中表名相同,因此自连接需要使用别名。

没有使用别名将报错:

5.2 自连接非必要不使用

假设有以下场景:

        从上图可知,除了行列关系不同,使用其他方法可以和自连接获得一样的数据,但是自连接还需要对数据进行笛卡尔积,查询开销大因此,自连接的查询方式并不常用。如果出现一定要使用自连接进行查询才能获得正确数据的情况,此时则应考虑表的设计是否存在缺陷。


六、子查询(嵌套查询)

6.1 简介

        子查询是嵌套在主查询内部的SQL查询,它返回一个结果集,然后被用作主查询的条件。子查询需要使用where子句,并将其放在主查询的括号内。

语法:

主查询语句 where 包含(子查询语句)的条件表达式;
释义:

使用子查询语句返回的结果集作为主查询语句的条件。

6.2 in 和 exists 关键字

子查询语句可以配合 in 和 exists 关键字使用。

关键字释义
in / exists包含在(子查询语句返回的结果集中)
not in / not exists不包含在(子查询语句返回的结果集中)

6.3 子查询可能让简单的语句变复杂


七、合并查询

7.1 简介

        合并查询用于查询多个表的多个列的查询,这些表和列将被组合成一个结果集。在前后查询的结果集中,列的类型和数量需要一致,列名则不需要一致。

        合并查询需要使用 union 或 union all 关键字。

关键字说明
union取得两个结果集的并集,去重
union all取得两个结果集的并集,不去重
语法:查询语句1 union 查询语句2;
释义:将两个查询的结果集合并,去重,打印。

7.2 合并查询可能让简单的语句变复杂


八、MySQL 中各个关键字的执行顺序

fromonjoinwheregroup bywithhavingselectdistinctorder bylimit
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

        关键字从左到右,优先级依次从高到低。优先级高的关键字先执行。


阅读指针 -> 《数据库中的索引是什么?》

链接生成中...........

http://www.hkea.cn/news/162545/

相关文章:

  • 做360网站优化快推广普通话宣传语手抄报
  • 动态网站开发语言有哪些大学生创新创业大赛
  • 关键词推广公司网站网络排名优化方法
  • 福州移动网站建设网络营销推广工具有哪些
  • win2008sr怎么用iis做网站国外网站加速
  • 合肥++网站建设磐石网站seo
  • 万网主机怎么上传网站如何在百度上投放广告
  • 做网站时如何给文字做超链接全球疫情最新数据消息
  • 四川省住建厅官方网站3分钟搞定网站seo优化外链建设
  • 做网站阳泉巨量千川广告投放平台
  • 温岭哪里有做网站的如何自制网站
  • 知道创于 wordpress搜索引擎优化宝典
  • 乌兰县wap网站建设公司有效获客的六大渠道
  • 微信网站开发教程视频教程百度一下主页官网
  • 网站开发专业前景关键词挖掘排名
  • 网站开发属于什么职位类别seo查询站长工具
  • wordpress postmetaseoul national university
  • 商务网站的主要存在形式杭州百度快照优化公司
  • 个人备案网站做购物网站可以不班级优化大师免费下载电脑版
  • 贸易网站建设互联网广告代理加盟
  • 深圳网站建设网络公司河北关键词排名推广
  • 在工商网上怎么注册公司seo优化博客
  • 免费的小程序怎么赚钱历下区百度seo
  • 河北石家庄最新疫情最新消息优化防疫政策
  • 一站式做网站哪家强新闻小学生摘抄
  • 江西南昌网站建设公司哪家好谷歌google 官网下载
  • 公司网站用什么开发百度指数怎么用
  • 建站主机 wordpress济南网站万词优化
  • 哈尔滨app开发seo自学网官网
  • 网站答辩ppt怎么做全网关键词云在哪里看