首先要理解程序员的概念和范畴。 一般来说,程序员是从事程序开发、维护的专业人员;是指的可以应用编程语言进行电脑程序创作、软件开发的人员; 所以,广义来说,编写程序的人员都可以程序“程序员” 而不管你用的程序语言是什么(C, C++, C#. NET, Python, T-SQL etc.); 根据具体的工作,又可以分为 【软件开发人员】,【web开发人员】(前端|后端), 【移动程序开发人员】, 【嵌入式开发人员】, 【数据分析工程师】等。
其次, SQL其实是一种领域编程语言,主要面向的是数据领域的查询语言。 (Structured Query Language)。最初主要是面向关系型数据库【RDBMS】的数据操作和查询, 用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。1986年,美国国家标准协会对SQL进行规范后,以此作为关系式数据库管理系统的标准语言,1987年得到国际标准组织的支持下成为国际标准。不过各种通行的数据库系统在其实践过程中都对SQL规范作了某些编改和扩充。比如微软的T-SQL, 以及面向Oracle/MySQL的PLSQL。
几类程序员可能经常用到SQL进行编程:DBA 经常用SQL管理数据库集群中的各种操作;BI工程师也是利用SQL进行ETL操作,生成报表; SQL更是数据分析师进行快速分析的有力工具。。。
近年来,随着大数据技术的发展, 类SQL的查询语言越来越流行,这主要是由于SQL的简单易用的特性,它更多的是要表达出要得到什么结果(What),而不是像其他通用编程语言来表达怎么做(How)。比如Hadoop中的Hive (Hive Query Language), Spark (Spark SQL) 越来越成为大数据分析的必要工具;再比如图数据库(Neo4j)中的Cyper,其实也是一种类SQL语言。未来,掌握SQL一定是数据类程序员的必备技能之一;