还有不会用 SQL 的程序员吗?
▲图片来源:Google
这应该是业务运营团队提供的好不好?!虽然内心拒绝,但身体还是很诚实。我在确认需求之后,马上就写好了相关 SQL 查询,并且很快拿到了线上运行结果,生成 EXCEL 报表发给了领导。
之后我得知,由于新产品的图形报表分析功能还没有上线,所以不会用 SQL 语句拿数据的业务分析人员就吃了苦头。在运营团队被 BOSS 一通批评之后,这个任务就转到了我们开发部门。最后,BOSS 要求他们学会自己从数据库获取数据进行分析,而我们可以提供支持。
事情虽然已经过去,但是我对此却有一些思考。我们是一家技术公司,岗位包括设计、开发、测试以及产品和运营,但主要由技术人员组成。虽然不是所有人都需要整天写代码,但处理和分析数据是不同岗位都需要的基本技能,因此我们都可以算作广义上的程序员。
尽管各种数据库有所不同,但是访问和操作数据库的 SQL 却是大家通用的语言。于是乎,以下工作岗位都不可避免需要用到 SQL 语句的数据处理功能:
数据分析师:显然这是一群依靠分析数据为生的人,与数据库打交道是必不可少的,SQL 是他们必备技能之一。 数据科学家:与数据分析师一样,数据科学家的日常工作也离不开数据的处理,不可避免需要使用 SQL。 数据库开发工程师:这个职位的主要任务就是写 SQL 代码,实现业务逻辑。 数据库管理员:也就是 DBA,主要职责是管理和维护数据库,除了会写 SQL,还需要负责审核开发人员编写的 SQL 代码。 后端工程师:后端开发必然需要涉及数据的处理,需要通过 SQL 与数据库进行交互。 全栈工程师:既然是全栈,自然包括后端数据的处理。 移动开发工程师:作为一名移动开发工程师,一定对 SQLite 数据库不会陌生,它是在移动设备中普遍存在的嵌入式数据库。 产品经理:产品经理需要了解产品的情况,而数据是最好的说明方式,了解 SQL 非常有利于对产品的把握。
著名的技术问答网站 Stack Overflow 发布的 2019 年度开发者调查报告(猜猜他们的结果数据是用什么语言统计出来的?)
SQL 在设计之初就考虑了非技术人员的使用需求。SQL 语句全是由简单的英语单词组成,我们只需要说明自己想要的结果,将具体的实现交给数据库。可以说,SQL 是一种非常人性化的编程语言。
扫码了解《SQL 从入门到精通》专栏详情
▼
第三部分:开发篇。讲述数据库设计与开发过程中涉及到的一些实用知识。包括如何设计规范化的数据库、如何管理数据库对象、如何对数据进行增删改、数据库事务的概念、索引的原理;同时还会介绍视图的概念、如何使用存储过程实现业务逻辑以及如何利用触发器实现用户操作的审计。
第四部分:扩展篇。我们将分析 SQL 语句的执行计划与查询语句的优化、使用 SQL 处理 JSON 数据、在 Python 和 Java 中执行 SQL 语句,并介绍动态语句和 SQL 注入攻击的预防。在专栏的最后,我们将探讨一下 SQL 编程中的道与术。
专栏亮点
零基础学习:通过简单易懂的示意图和案例分析,透彻讲解每个 SQL 知识点; 内容全面覆盖:从基础查询到高级分析,从数据库设计到查询优化,全面介绍 SQL 必备技巧; 基于最新标准:紧跟产业发展的最新趋势,解锁最前沿的 SQL 技能; 4 种主流数据库的语法实现:提供并解读 Oracle、MySQL、SQL Server 以及 PostgreSQL 实现代码。
专栏作者:董旭阳
擅长各种数据库管理与 SQL 开发,包括 Oracle、MySQL、PostgreSQL 等,拥有 Oracle OCP 证书和 Redhat RHCE 证书。
点击阅读原文,了解 SQL 专栏。
- Java程序员必备的15个框架,还有谁不会
- 国内IT界女神程序员!和她们一样漂亮的还有谁?
- 甲骨文:Java EE不会死 还有大计划
- 为什么在动态SQL中where条件判断的时候后面跟上and不会报错
- 成为一名专业程序员我还有多长路要走?
- 程序员常用SQL 语句:
- delete 指针之后 ,只是释放了指针指向的内存空间,指针不会自动置为NULL,还有delete 遇到指针为NULL时不会调用析构函数
- 程序员该如何向奶奶解释 SQL 和 NoSQL?
- 程序员老鸟写sql语句的经验之谈【转】
- [置顶] 30岁程序员困境:转行or跳槽?如何做才不会被替代?
- 小孩子真是有样学样、长大不会做个女程序员吧?
- 程序员为什么不会修电脑
- 程序员吐槽校招生:211硕士啥都不会,让他自己百度还不乐意!
- 给那些笨笨的不会追女孩的程序员老爷们....
- [置顶] orm 用多了,忽然发觉SQL不会写了... 整个基本的功能重新学习SQL,改自fleaphp
- 总结一点程序员老鸟写sql顺手拈来的功夫
- sql中索引不会被用到的几种情况
- 使用Libgdx进行游戏开发(8)-没有美工的程序员,能够依赖的还有粒子系统
- 程序员老鸟写sql语句的经验之谈、百万数据查询优化技巧三十则
- 为什么有的程序员不会编程?