赞
踩
推荐此下网址:
https://cloud.tencent.com/developer/article/1033405
https://blog.csdn.net/zpn78163com/article/details/51450665
https://blog.csdn.net/u014132947/article/details/80530371
https://zhuanlan.zhihu.com/p/47528345
https://www.cnblogs.com/wucongzhou/p/12496294.html#1%E3%80%81%E5%8D%95%E8%A1%8C%E5%87%BD%E6%95%B0 --Oracle常用函数
如果expr1为NULL,返回值为 expr2,否则返回expr1
姓名相同的显示一次
如果字段名满足条件一,输出结果一,否则输出结果二
decode(条件,值1,返回值1,值2,返回值2,…,值n,返回值n,缺省值)
转成日期
转成字符串
把2020-09-12转化成20200912格式,然后将20200912转化成字符串格式,20200912,+n代表几天前,-n代表几天后
567都可以在其基础上进行计算
据查询的过程中进行日期的按月增加
剔除重复字段
SELECT name from user UNION SELECT name FROM student
可以将2个或者多个表进行合并,每一个union 子查询都必须有相同的列,而且对应的每个字段的字段类型都是一致的。例如一表中的第一个字段是int型,那么union二表中的第一个字段也必须是int型
即使有重复数据也会显示
SELECT name from user UNION ALL SELECT name FROM student
Union:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序;
Union All:对两个结果集进行并集操作,包括重复行,不进行排序;
类似于分组
SELECT 字段一,字段二,字段三,字段… FROM 表名 where 条件
GROUPby 分组字段一,分组字段二,分组字段N…
grouping SET (分组字段一,分组字段二,分组字段N…)
order by 排序字段;
子查询部分,临时表.
以下这句SQL的意思相当于
select * from (select * from xxx);
-- with table_name as(子查询语句) 其他sql
with temp as (
select * from xxx
)
select * from temp;
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YQHirwWG-1612752574834)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1600868378976.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SGsMX5yd-1612752574836)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1600869140101.png)]
CASE
WHEN 条件 THEN
"显示值"
WHEN 条件1 AND 条件2 THEN
"显示值"
ELSE "显示值"
END AS 列别名 FROM 表名;
一般适用于模糊查询
解释%代表多个字符,_代表一个字符
一般和Group by,他是Group by 后用来查询的
type目标类型:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-d8p6904v-1612752574838)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1600911704989.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-k3sZ1PFD-1612752574840)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1600911734024.png)]
create index [index_studentid] on table student_3(studentid)
as 'org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler'
with deferred rebuild
IN TABLE index_table_student_3;
org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler :创建索引需要的实现类
index_studentid:索引名称
student_3:表名
index_table_student_3:创建索引后的表名
*
from
index_table_student_3;通过||进行拼接
substr
将字符串从n位截取到m位
显示:abc,DEF,Efg
显示:67,66
9/5=1…4
显示为:4
问题:分区与分组有什么区别?
•分区只是将原始数据进行名次排列(记录数不变),
•分组是对原始数据进行聚合统计(记录数变少,每组返回一条)。
常见的窗口函数有三个:rank, dense_rank, row_number
谈谈三者:
SELECT * FROM emp LIMIT n,m 从第n+1条,取m条数据
Lower:转换大小写混合的字符串为小写字符串
Upper:转换大小写混合的字符串为大写字符串
Initcap:将每个单词的首字母转换为大写,其他字母为小写
select concat('Hello ',‘World’) from dual;
–等价于
select 'Hello '||‘World’ from dual;
where dt >= to_char(to_date(?{f_day} ,'yyyymmdd')-7,'yyyymmdd')
and dt <=to_char(to_date(?{t_day} ,'yyyymmdd')-7,'yyyymmdd')
日环比 = 今天/昨天
月环比=本月/上月
年环比=本年/去年
日同比=今年的今天/去年的今天
月同比=今天的本月/去年的本月
上周用户本周留存率 = 上周活跃本周留存用户数/活跃用户数
播放转化率= 播放用户数/活跃用户数
上周活跃留存率=上周活跃本周留存用户数/上周活跃用户数
同比增长率=(本期数-同期数)/|同期数|×100%
环比增长率=(本期数-上期数)/上期数×100%
完播率 = 播放完成度达60%及以上的播放用户(>=3s) / 播放用户数(>=3s)
注释:play_reach_standard_num / play_num
播放完成度/用户数
case when…then…else…end…as…一般用于多个字段进行判断
decode一般用于一个字段进行判断
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。