数据分析与SQL
guotch
这个作者很懒,什么都没留下…
展开
-
from_unixtime的一个注意点
select from_unixtime(0) 这个语句的结果是1970-01-01 08:00:00因此,如果使用select floor( time_int/24/60 )*60*24的方式,并不会取得今天凌晨0点的时间戳,而是前一天早上8:00的时间。需要使用select floor( time_int/24/60)*60*24+16*60...原创 2020-12-06 17:55:47 · 436 阅读 · 0 评论 -
sql掉坑记录
SQL环境: 阿里MAXCompute大致的语句@existgroup := select group_name, device_name from a.table1 ;@existinterface := SELECT group_name, device_name ...原创 2020-02-06 15:51:08 · 154 阅读 · 0 评论 -
Octave基本操作
在MAC安装完成Octave后,可以使用octave-gui/octave-cli两个命令打开软件。一个基本的使用方法是:data = load ("-ascii","export.txt")hist(data(:,1),50)注意:如果使用cli模式,会报错弹窗的H没有设置。所以必须使用gui模式。https://www.jianshu.com/p/d27...原创 2019-11-15 08:26:12 · 1155 阅读 · 0 评论 -
SQL on and where
select distinct a.pro_id,a.pro_ip,b.name from(select distinct pro_id,pro_ip from table2)ainner join(select distinct id,name from table1where ds = "${bizdate}")bon a.pro_id = b.id-- where...原创 2019-11-01 21:05:00 · 128 阅读 · 0 评论 -
ODPS MAPJOIN与数据过滤
1.需求:表1有device,time,data 三列(约100W行)表2有device,time_begin,time_end 三列(约100行)我们需要实现的逻辑是:当表1的device=表2的device 且表1的time在表2的time_begin和time_end之间,从表1中剔除此数据。 尝试方案1:表1 left join 表2:不行:原因是表2中对一个d...原创 2018-07-17 15:21:57 · 2931 阅读 · 0 评论 -
MYSQL做 RANK PARTITION
MYSQL没有RANK PARTITION能力。因此,无法通过排序后读取rs=1的方式得到最大值的对应的其他参数。百度后得到了一个方案如下:select * from(select ta.a1,ta.a2,ta.utilization,count(*) as rank from(selecta1,a2,utilizationfrom table_a ...原创 2018-08-03 12:13:43 · 921 阅读 · 0 评论 -
ORACLE LEFT JOIN时如果被匹配的两个字段都为NULL,被视作不相等
select a1,b1,a2,b2,a1.c from(select 1 as a1,2 as b1 ,null as c )a1left JOIN(select 3 as a2,2 as b2 ,null as c )a2on a1.c= a2.c该查询的结果是:a b a2 b2 c1 2 \N \N \N...原创 2019-01-08 23:55:01 · 3191 阅读 · 0 评论