sql⼀段时间内相同的只统计⼀次_SQL-多表查询
实际⼯作中,需要查询的结果经常分散在多张表中,所以需要通过联结⽅式进⾏多表查询。
⼀、表的加法
1.使⽤⽅法
加法(union),把两个表按⾏合并在⼀起,把重复的数据删除掉只保留⼀条,如果想要保留重复⾏则使⽤union all。
2.练习python个人总结
(1)新建course1表
通过复制course表的结构和数据新建course1表
mysql语句多表查询
(2)
case1:只保留⼀⾏重复数据
case2:保留所有重复⾏数据
⼆、表的联结
(⼀)交叉联结
1.定义
交叉联结⼜称为笛卡尔积,两个集合X和Y的笛卡尔积(Cartesian product),⼜称直积,表⽰为X×Y,第⼀个对象是X的成员⽽第⼆个对象是Y的所有可能有序对的其中⼀个成员。(笛卡尔积的定义来⾃百度百科)
2.练习
使⽤course和course1为例,每个表中都分别有3条数据,如果使⽤交叉联结cross join功能,那么最终结果为3*3条数据
(⼆)内联结
1.定义:查同时存在两张表的数据,使⽤inner join
变量名词解释统计学
最新手机网页游戏2.练习
学⽣表和成绩表是通过学号联结的,同时存在学⽣表和成绩表的学号有【0001】,【0002】以及【0003】,结果如下图所⽰:
备注:将student 设置为表a,score表设置为表b,是为了防⽌表名过长,消耗运⾏效率。
(三)左联结
1.定义
左侧的表作为主表,将左边的表全部取出来,右边数据只取和左侧数据相同的数据。
快速排序算法介绍
2.练习
(1)学⽣表中学号有0001,0002,0003,0004,但是课程表中没有0004,所以最终结果0004对应的相关数据会为空,如下图所⽰
ajax取消异步(2)如果要查只有左表有的数据,则需要增加⼀个判断条件,如下图所⽰:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论