为什么用SQL而不是Excel+VBA?

SQL主要服务数据库

SQL服务的是MySQL、Oracle、SQL Sever、Hive等各大数据库,它们都需要SQL来管理、定义。题主理解的SQL只限于查询数据、清洗数据,这些当然Excel+VBA都能做到,任何编程语言都能做到,但事实是SQL是数据库的管理工具,查询只是它功能之一。

SQL功能 语句
数据查询语言DQL select
数据操控语言DML insert、update、delete
数据定义语言DDL create、drop、alter
数据控制语言DCL grant、revoke

Excel+VBA是表格工具

我们可以把SQL理解成数据库世界的通用规则,Excel+VBA并不属于这个体系。也可以说SQL与Excel+VBA是不同的物种,没有对比的意义。

Excel是拖拉拽式的表格工具,将数据存储与数据处理集成到图形化界面里,极易入门使用。VBA是对Excel进行自动化处理的编程语言,也就是宏语言。这两者结合能更好的发挥Excel的功能。

但是Excel+VBA只是限于Excel生态使用,你可以做数据分析处理,但他们并不支持对数据库查询管理,无法替代SQL在数据库中的作用。

Excel+VBA偏个人使用,SQL偏企业生产

从业务场景看,Excel+VBA往往限制于小数据,多用于个人工作,一旦涉及到大数据、企业数仓、数据产品,Excel+VBA就无能为力了。

而SQL所在的数据库生态,是业界主要的数据生产、存储、应用依托工具,几乎是数字化的标配。

SQL和编程语言也有天壤之别

SQL和一般的编程语言也是完全不同的。编程语言是面向过程或面向对象的思维模式,用循环、判断、函数、类来解决问题,而SQL是面向表操作的思维模式,用连接、分组、筛选来处理问题。

比如同样拼接两个字段,SQL会用Join,而编程语言则会用if循环遍历。

有些人提到过Python可以替代SQL,因为其第三方库Pandas+Numpy+Sklearn几乎可以处理任何数据问题,能做很多SQL做不了的事,比如机器学习、特征工程、可视化、复杂的数据清洗等等

确实SQL做不了这些,因为它是基于表操作的标准语言,处理相同的问题能更快、更准确。

你可以用Pandas、SQL同时处理100万行数据,进行join操作,SQL的速度会碾压Pandas。

小结

SQL其实比Excel+VBA更容易学习,因为它的语法结构并不复杂,函数也相对有限。而且SQL是效率极高的,只要按照规范去编写代码,你能处理任何数据量的任务。

当然SQL和Excel+VBA都可以好好学习,它们是市场上使用率最高的数据工具,对个人能力很有帮助。

相关推荐
wayuncn34 分钟前
哈尔滨电商企业服务器托管方案
运维·服务器·数据库
重整旗鼓~1 小时前
27.Redisson基本使用和可重入性
数据库·redis·缓存
瑶总迷弟1 小时前
使用 Docker 和 docker-compose 快速部署 openGauss
linux·数据库·云原生·eureka
C.R.xing1 小时前
Pyspark分布式访问NebulaGraph图数据库
数据库·分布式·python·pyspark·nebulagraph
九皇叔叔1 小时前
深度解析 PostgreSQL 中的 ctid、xmin、xmax:从原理到实战
数据库·postgresql
殷丿grd_志鹏2 小时前
开源项目RuoYi-Cloud-Plus详解——公网内网穿透到虚拟机环境(持续更新)
数据库·开源·内网穿透·虚拟机
木易 士心2 小时前
AI 在数据库操作中的各类应用场景、方案与实践指南
数据库·人工智能·oracle
SunsPlanter2 小时前
苍穹外卖--04--Redis 缓存菜品信息、购物车
数据库·redis·缓存
解决问题no解决代码问题3 小时前
oracle删除表与表空间清理机制
数据库·oracle
程序员三明治4 小时前
【Mybatis从入门到入土】ResultMap映射、多表查询与缓存机制全解析
java·sql·缓存·mybatis·resultmap·缓存机制·多表查询