作者介绍 @知乎:鲸歌 电商行业数据分析师; 为头部品牌提供数据咨询服务; 热衷学习与分享; “数据人创作者联盟”成员。 01 前言 本文涵盖3部分: ●School数据库包含的4张报表:student、score、course和teacher,报表明细及主键; ●SQL知识点框架:表的加法、表的联结(交叉联结、内联结、左联结、右联结和全联结)、联结应用案例和case表达式; ●实操截图:与知识点一一对应,从实践中不断得到提升。 下图是本期SQL语句所涉及的4张报表,别看表格很小,其实能量巨大,真实业务场景会涉及更多报表以及海量数据,两者的本质一样,区别在于数据量的多寡。倘若能够把4张报表实操顺溜,那么日后遇到巨量数据也不怕不怕啦~ 如果问你,人生中到达学习巅峰的时刻是在什么时候?或许绝大多数人都会回答是高考的那三天,毫无疑问,三年乃至更多的朝朝暮暮勤奋苦读都是为了那三天。 那如果再问你,在高中数学里让你印象深刻的知识点有哪些?或许我猜很多人会说还给老师了,哈哈,这是玩笑话,对于我,我印象深刻的是老师讲解集合的文氏图。对,就是那个图像化显示交并补的矩形框、圆形和阴影斜线的文氏图(又叫韦恩图)。 或许你已猜到,我隔着千山万水要唤醒你对“文氏图”的记忆是为什么,对,和今天SQL中的多表联结有关。 因为本期内容知识点较多,整个框架截图会有一种看着囫囵吞枣的感觉,所以,我会针对每个知识点单独拎出,同时搭配习题。 02 表的加法 同表相加成大表,union和union all要分清 ,复制功能不要忘。 03 表的联结 思考清楚表格之间属于什么联结,再动手写sql语句。 1. 交叉联结:各联结的鼻祖。 2. 内联结:共同拥有。 3. 左联结:左是老大,都听它的。 4. 右联结:右是老大,都听它的。 5. 全联结:你有我有全都有 6. 联结那么多种,该如何选择对呢? 当实际业务工作中需要生成固定的表单或需要某张表的数据时候,可以选择左或右联结,其余都是内联结。 04 联结应用案例 遇到业务问题莫要慌,牢记解题思路定心神。 05 case表达式 哈哈哈!我是sql中的if函数也。 表格虽千变万化,但万变不离其宗的是彼此之间的关系,在关系的判断上要做到火眼金睛。Case表达式第一眼就让我想到了excel中的if函数,这说明工具之间的知识点是相通的,关键是要玩的溜。Sql真是一个神奇的技能,如果要让技能熟练,那就离不开操练,加油!
zan