不知不觉入职知乎外包已经四个多月了,作为一个应届生我还是梦想败给了金钱。外包的话真的比自研公司要轻松一点,本人毕业后经历过三家公司,第一家是一家游戏公司做的BI分析师,在公司那是异常的卷,每天虽说是九点半上班,六点半下班,但是真的六点半下班的也就寥寥几次。
后来离职以后去干了一段时间的后端工程师,当时后端知识还有一点留存,侥幸被一家公司看中并入职了。在这家公司我从0开始接触微服务,感觉未来小公司的网站趋势应该就是微服务了,因为快,简单,所以开发成本就相对来说低很多,特别用python更加简单了。在那家公司很感谢我的那个经理,也是我们公司的架构师,让我学到了很多,他教了我很多,我可以感受的到他确实是想要培养我,虽然每天都有加班。
后来因为前边面试的外包公司又通过了,工资给的多一点,就放弃了后端工程师然后继续干的数据分析这个岗位。数据分析这个岗位最重要的一点是什么?了解业务!!!为什么说这个最重要呢,因为技术真的是网上可以搜到,但是业务不了解你做出来的东西数据不对,那就和白做一样。所以数据分析师这个岗位我认为最好在一个公司多待一段时间,这样才能真正发挥自己的一个知识。刚开始你对公司业务都不了解,真的是取数据也是不敢保证正确,因为你不懂。
接下来附图(上干货)
可能很多人看过以后也不会用,这个很正常,毕竟一个真正的技能需要的是反复横练,还有的就是这讲的已经算是sql进阶了,如果感觉自己基础不是很好的同学建议先去看我的另一篇文章。
数据分析sql基础整理
本同学以后应该就是干数据分析这一行业,如果对于数据分析有问题的同学想要询问问题的话欢迎随时骚扰我^ _ ^。个人感觉数分还是比前后端爽,每天划水每天爽,一直划水一直爽。
接下来我可能会一直出关于数据分析的知识(excel,sql,python),有这方面的同学 求关注点赞 以后不迷路。
数组操作创建数据: array(‘aa’,‘bb’,‘cc’)
查看数组长度:size(array)
查看数组中是否包含某个元素:array_contains(array,‘写作’)
数组中变多行拆分:LATERAL VIEW explode () t|mt2
select author_id1 from
dwd_vip.dwd_vip_sku_info_detail_pt LATERAL VIEW explode (author_id) t as author_id1
多行数据变一行字符串:去重collect_set(p_date),不去重collect_list(p_date)
select calssname, concat_ws(’, ',collect_set(name)) from
class group by classname
把文本按标点和空格拆分为嵌套数组:
sentences(‘小明 你今天!爱 了吗’) 结果[[‘小明’,‘你今天’][‘爱’,‘了吗’]]
对数组去重:array_distinct(array)
移除数组指定元素:array_remove(array(1,2,3,4,4),4) 结果(1,2,3)
截取数组:slice(array(1,2,3,4),2,3) 结果(2,3,4)
数组排序sort_array(array(3,1,2),true) 结果(1,2,3) true升序排序,false降序排序
返回最大值array_max(),最小array_min()
取数组交集array_intersect(array1,array2)
取数组并集array_union(arrayq,array2)
字符串拼接concat(‘a’,‘b’)结果‘ab’
concat_ws(’-’,‘2022’,‘03’,‘06’) 结果’2022-03-06’
format_string(‘你%s啊’,‘好’) 结果’你好啊’
返回字符串长度length()
首字母大写initcap()
转换小写lower()
转换大写upper()
反转reverse()
把其他类型数据转换为字符串string()/cast(1 as string)
like模糊匹配 a like ‘%苹果%‘
rlike多模糊匹配 rulike ‘苹果|香蕉|橘子’
regexp_extract(a,’[0-9]’,0)正则匹配字符
学习请参考https://www.runoob.com/regexp/regexp-syntax.html
字符串截取:
从某个位置开始截取几个substr(‘fasdfads’,3,2) 结果sd
从某个位置到末尾substring(‘fasd’,-3) 结果asd
移除左右空格:trim(str)
字符串替换:replace(‘abc’,‘a‘,’c‘) 结果:‘cbc’
多字符替换:translate(‘AaBbCc’,‘abc’,123)结果:A1B2C3
获取昨天的日期: current_date - 1结果:(2022-03-16)
取当前时间戳:unix_timestamp()
取星期:weekday(‘2022-03-18’)+1 结果:5
加天数:
date_add(‘2022-03-13’,5) 结果:2022-03-18
date_sub(‘2022-03-13’,-5) 结果:2022-03-18
计算这三十天的订单:
count(if(datediff(current_date,日期字段)<30,deals,null))
转换天数日期格式cast(‘2022-03-18 01:22:09’ as date)
结果:2022-03-18
时间戳换时间from_unixtime(1234567890,‘yyyy-MM-dd’)
时间换时间戳to_unix_timestamp(‘2022-03-18’)
更多请参考:http://help.guandata.com/hc/kb/article/1521481/



