随笔分类 -  SQL

hive group by distinct区别以及性能比较
摘要:Hive去重统计 相信使用Hive的人平时会经常用到去重统计之类的吧,但是好像平时很少关注这个去重的性能问题,但是当一个表的数据量非常大的时候,会发现一个简单的count(distinct order_no)这种语句跑的特别慢,和直接运行count(order_no)的时间差了很多,于是研究了一下。 阅读全文

posted @ 2019-11-05 11:47 hdc520 阅读(1390) 评论(1) 推荐(0) 编辑

数据库面经
摘要:1、Mysql的超键,候选键,主键,外键: (1)超键:在关系中能唯一标识元组的属性集称为超键,可以区分表中每一行记录的属性集(单个属性,多个属性组成也行) 1)例子:在一个学生的表中,假设有“学号”、“姓名”、“相关信息”、“生日”等字段, 其中学号是唯一的,那么(学号)是一个超键,同时(学号,姓 阅读全文

posted @ 2019-09-02 13:31 hdc520 阅读(2836) 评论(0) 推荐(0) 编辑

count(*),count(1),count(列名)的区别
摘要:count(*)和count(1)无任何差别,永远优于count其他字段只要存在普通索引,count就会使用普通索引,只存在主键时,count(*)和或count(1)会使用主键索引 count(a) (1).当a=null时,count(null) (2).a=*或者1时,count(*)为表的行 阅读全文

posted @ 2019-08-26 20:40 hdc520 阅读(438) 评论(0) 推荐(0) 编辑

SQL的各种连接--自联结,内连接,外连接,交叉连接
摘要:1、准备两个表:Student,Course,其中student.C_S_Id=Course.C_Id(即Student 表中的 C_S_Id 字段为外键列,关联的是 Course 表的 C_Id 主键列) 2、内连接(table1 inner join table2 on 条件表达式):满足on条 阅读全文

posted @ 2019-06-28 11:44 hdc520 阅读(728) 评论(0) 推荐(0) 编辑

SQL执行顺序和coalesce以及case when的用法
摘要:1、mysql的执行顺序 from -> on -> join -> where -> group by -> 聚集函数 -> having -> select ->distinct -> union -> order by -> limit 注意:select distinct name from 阅读全文

posted @ 2019-06-20 11:50 hdc520 阅读(2837) 评论(0) 推荐(0) 编辑

SQL基础语句
摘要:判断字段长度函数length SELECT name,capitalFROM worldWHERE LENGTH(name)=LENGTH(capital) 求字串,注意分左字串和右字串 LEFT(ARG,LENGTH)、RIGHT(ARG,LENGTH) LEFT、RIGHT函数返回ARG最左边、 阅读全文

posted @ 2019-06-14 22:22 hdc520 阅读(462) 评论(0) 推荐(0) 编辑

导航