8年SQL,我换了5次职业方向
点击关注上方“SQL数据库开发”,
设为“置顶或星标”,第一时间送达干货
2013年刚开始工作的时候,SQL只是一个谋生手段,从没想过有一天我会靠它一路走到今天。
数据统计员
2013年刚来广州的时候,人生地不熟,跟大多数人一样,在出租屋里海投简历。可能那时候IT人才稀缺,投出去的简历很快就收到面试通知了。面试的岗位是数据分析师,但是内容其实就是用SQL统计数据而已。
为了能顺利通过面试,把之前在网上找的各种面试题都看了一遍,特别是涉及SQL笔试的题目,做了一遍又一遍。功夫不负有心人,笔试的时候真就遇到了类似的题目,顺利通过,当天下午就通知入职。
入职后还真就每天帮各个部门统计各种数据,把本来不怎么熟练SQL的我真就练得越来越熟练了。
加之当时工作也不是很忙,总想看看SQL的一些高级用法,网上看了很多大佬的SQL写法,真就大开眼界!例如动态SQL,自定义函数,递归,开窗函数等等,动不动就是几百行的代码,再看看自己写的代码最多不超过20行,才知道SQL并不只是CURD。
空闲时间也读了一些大佬们推荐的书籍,例如SQL Server的技术内幕上下卷,MySQL的高性能,Oracle的编程艺术,都是不错的书。至今只读完了SQL Server技术内幕上下卷,但也大受启发。
数据库开发工程师
做了2年的数据统计员,总想挑战一下高级点岗位,果断离职应聘了一家公司的数据库开发工程师,除了SQL的CURD,更多的还需要会灵活使用不同的数据库,这就需要熟悉不同数据库之间的相同点和不同点了,而且还需要会一些比较高级的写法,就是上面说的那些大佬们写的一些动态SQL,游标之类的,而且是不同数据库的写法都要会。
一开始还真有点难度,只能模仿别人的写法胡拼乱凑,无非就是成功与报错呗。试了几次发现写法其实都比较类似,只是个别语法有所差别,记住这些差别也就不难了。
为此把不同数据库的写法都做成了样例收藏起来,不懂的时候再对照就知道当时的思路了,这样慢慢的也就习惯了,算是入了SQL的门。
ETL工程师
工作就是这样,当你觉得每天做的事都没有挑战的时候,要么当咸鱼每天混吃等死,要么跳出舒适圈继续折腾,我比较喜欢后者。
同样是干了两年,又换到做ETL工程师。ETL工程师相比之前的两份工作,主要是要理解数据仓库,调度等内容。
数据仓库其实好理解,就是存放所有数据的一个大型数据库,它的大并不止容量大,而更多在于业务之大,场景之大。
调度就更好理解了,就是让数据按照既定的调度配置进行流转,通常是从不同的系统流转到数据仓库,经过一些列处理后,再从数据仓库分发给各个业务。
而要做好一个数据仓库,首先要解决的就是数据的划分,为此我们引入了主题,根据当时的业务场景拆分成10个主题域。什么当事人,资产,营销,事件等等主题,为我们做好数据调度提供了非常明确的指引。
BI工程师
ETL工程师只做了一年,就没有继续了,主要是技术内容比较少,更多的是对主题的划分和ETL工具的使用,市面上比较流行的ETL工具用法也基本类似。
转身做BI工程师其实是我没有想到的,在此之前只知道BI工程师是做数据可视化的,但是我没有做过数据可视化呀,后来发现BI工程师入门其实不难,难的是要会懂UI设计和布局,其实就是要把页面做的好看。
当时用的BI工具是Power BI,为此我还特地下班跟着视频学习了一段时间,其实就是对数据指标的拖拉拽,真不难!
但是公司高薪雇我,肯定不会只让我做这个拖拉拽啊,这期间的工作其实更多的是做指标和维度了。
我们都知道一个公司发展到比较深的程度,业务线多,数据多,如何更高效的管理,数据指标的制定其实是一个比较好的办法。
通过对数据指标的可视化,可以更好的洞悉公司管理过程中存在的一些问题,这其实就是某些BI厂商说的比较高大上的“数字化转型”。
此外指标也是统一各业务线的一个有效方法,包括为此而建立的各种主数据系统(组织主数据,项目主数据,人员主数据等)也是为了使数据在统计时,口径一致。
数据分析师
能做出好看的可视化报表固然是好,但是真正能起到价值的还是数据分析师。数据分析师想必大家都知道是干啥的,就是分析应用数据,从数据中找出路,找问题等。
辞了BI工程师的工作,找了现在数据分析师的工作,其实和之前几份工作都差不多,一开始并不熟悉,只是思考和做的多了也就熟了。
新的公司刚好是初创公司,刚开始对数据分析还不是急需,很多基础工作还需要开展,特别是一些在线报表,数据可视化,之前会的正好派上用场。随着各条业务线的建立,所有数据都经由我这里,对业务愈发了解,真要去分析问题时也能思考的更多,理解的更多,渐渐地也就转成数据分析师了。
每一次换方向虽然都与SQL有关,但是内容还是有很大区别,但其中有一些经验相信大家也看出来了,我帮大家总结一下:
当你是菜鸟时,学习是最能让你安心的
当你遇到瓶颈时,勇敢的跳出舒适圈
当遇到新技术,大胆的去尝试
8年时间,每一次换工作基本都换了方向,每一次也都让我的能力更上一层楼,没有谁天生就会这会那的,摆正心态一步一步踏踏实实的学习方是上策,即使是现在我也还在学习一些数据分析的方法,共勉。
2022.1.12 晚10点
于广州
最后给大家分享我写的SQL两件套:《SQL基础知识第二版》和《SQL高级知识第二版》的PDF电子版。里面有各个语法的解释、大量的实例讲解和批注等等,非常通俗易懂,方便大家跟着一起来实操。
有需要的读者可以下载学习,在下面的公众号「数据前线」(非本号)后台回复关键字:SQL,就行
数据前线
——End——
后台回复关键字:1024,获取一份精心整理的技术干货
后台回复关键字:进群,带你进入高手如云的交流群。
推荐阅读
神奇的 SQL,GROUP BY 真扎心,原来是这样!
中国改名最成功的 5 所大学:改名如改命!
一座城市靠税收能年入多少钱?
超开心,国家发钱了!
有了这 4 款脚本工具,老板再也不怕我写烂SQL了
8年SQL,我换了5次职业方向相关推荐
- [译]在启用浏览器功能的INFOPATH表单中实现基于SQL SERVER的多级联动的下拉式列表...
翻译:实现多级联动的下拉式列表 原文:http://blogs.msdn.com/infopath/archive/2006/10/12/cascading-dropdowns-in-browser- ...
- sql中union和union all的区别
union 连接两个表查询的结果 假设我们有一个表Student,包括以下字段与数据: [c-sharp] view plaincopy drop table student; create tabl ...
- “见识”很重要 记一起Oracle的SQL调整
周大师培训完后马上跑到另一个兄弟单位处解决问题,真是佩服周大师啊. 兄弟单位碰到了两个棘手问题,一个数据imp时候报主键重复的错误,这个问题非常奇怪,暂时还不知道怎么解决今天不说它啦. 另一个问题是出 ...
- 【SQL】Sql Server SQL语句学习
文章目录 1. 什么是SQL 2. 关系模型 2.1 主键 2.2 外键 2.3 索引 3. DDL操作 3.1 对库操作 3.2 对表操作 3.2.1 创建和删除表 3.2.2 添加约束 3.2.3 ...
- 安装SQL Server以及SSMS
一.安装SQL Server 1.下载安装SQL Server 官网下载安装包 网址:https://www.microsoft.com/zh-cn/sql-server/sql-server-dow ...
- SQL优化篇:如何成为一位写优质SQL语句的绝顶高手
(Structured Query Language)标准结构化查询语言简称SQL,编写SQL语句是每位后端开发日常职责中,接触最多的一项工作,SQL是关系型数据库诞生的产物,无论是什么数据库,MyS ...
- SQL优化篇:如何成为一位写优质SQL语句的绝顶高手!
写SQL语句不难,稍微系统学习过数据库相关技术的人都能做到,但想要写好SQL却也不是一件易事,在大多数编写SQL的时候,很多人都是以实现需求为原则去撰写的,当一条SQL写出来之后,只要能满足业务需求就 ...
- SQL进阶挑战(MySQL为例)
1. 插入记录 1.1 明确只插入一条Value INSERT INTO t1(field1,field2) VALUE(v001,v002); 1.2 插入批量数据 INSERT INTO t1( ...
- spark sql 查看分区_Spark 3.0 中七个必须知道的 SQL 性能优化
本文来自 IBM 东京研究院的高级技术人员 Kazuaki Ishizaki 博士在 Spark Summit North America 2020 的 <SQL Performance Imp ...
- sql优化ppt_Spark优化 | Spark 3.0 中七个必须知道的 SQL 性能优化
本文来自 IBM 东京研究院的高级技术人员 Kazuaki Ishizaki 博士在 Spark Summit North America 2020 的 <SQL Performance Imp ...
最新文章
- Oracle Linux Server release 6.3 下安装JDK
- androidexternal目录下新增一个可执行应用及编译
- linux 简介与安装(虚拟机安装)
- android 6.0 dm-verity技术,Android 7.0安全性大幅提升,要求严格强制执行验证启动
- JMeter事务控制器(Transaction controller)
- SSD之硬的不能再硬的硬核解析
- linux中的socket编程,linux中socket编程
- SpringCloud(第 054 篇)简单 Quartz-Cluster 微服务,采用注解配置 Quartz 分布式集群... 1
- 小汤学编程之JavaScript学习day02——运算符、流程控制与循环、函数
- Vue.js 作者尤雨溪:TypeScript 与 JavaScript 并行才切合实际!
- 快压下载|快压软件官方下载
- 基于视频的相似图片处理[均值哈希算法相似度、三直方图算法相似度]
- ABP官方文档(四十七)【通知系统】
- Open Gapps各版本介绍
- oracle 查看用户配额,【Quota】获取及调整用户表空间配额方法
- Google - Android 12 更新预览
- XML 格式化转字符串
- 用matlab进行频域分析,用matlab进行信号与系统的时频域分析
- lumen时间不准确,少8个小时
- Redis主从配置读写分离
热门文章
- DM6437的学习过程
- ognl以及令牌以及开头的一点方法
- html win10虚拟键盘,win10专业版打开虚拟键盘的方法
- 一起学爬虫(Python) — 02
- 【LeetCode】592. 分数加减运算
- php 根据身份证计算年龄
- matlab3db带宽,[转]db,dbm,-3db带宽的定义
- 用HTML+CSS做一个漂亮简单的轻量级图片相册博客网站(web前端期末大作业)
- php语言简述_PHP语言的简介
- 由于系统限制了文件目录的读/写权限,程序将会退出,你可以重新安装百度网盘到有权限的目录或以管理员身份运行百度网盘。