50年了!为什么我们仍在使用SQL?
为什么我们仍在使用 SQL?
一、数据处理能力 二、实践检验 三、知识和社区 四、简单 五、高度普及 六、开源及互操作性 七、能用 SQL 谁还写代码? 八、SQL/RDBMS 和 NoSQL/DBMS 数据库各司其职 数据库是工具。工具不应该只有斧子,还应该有扳手,螺丝刀,锯子等等。每一种工具各司其职,解决不同的问题。而每一种数据库都长于一些事情,而短于另一些事情。 当你无法预见数据汇总或数据用途的所有可能性,但又需要表示一个系统中各部分的关系时,关系数据库就是最好的选择。而且老实说,大部分系统在这方面做得并不好。再者,SQL 语言本身提供了一种用户友好型的数据组织方式。 SQL/RDBMS 只是众多工具中的一种,且刚好在很多情况下都是切实能用的那种。而当需要保证数据的完整性、一致性时(比如金融领域),SQL/RDBMS 就是最好用的工具。 SQL 数据库有它们自身的缺点,且对于某些工作来说,并不是最好的选择。但在大部分情况下,它们可以轻松打败其他非 SQL 数据库。 有些人会担心数据规模的问题,但实际上,只有很小一部分人需要解决 RDBMS 的扩容问题——毕竟你不是 Facebook 或者 Google。因此,你仍然可以用 SQL 数据库管理数一百万计的用户信息,而不出现任何问题。 更何况,只要知道如何权衡利弊,RDBMS 是可以扩容的。 再用 50 年? 尽管数不清的其他数据库系统和技术,都在不断扩大着使用人群,但是,毫无疑问地,SQL 数据库在可预见的未来甚至更远,会一直发挥作用。随着大数据,深度学习和物联网的到来,即使 SQL 数据库再流行 50 年也不奇怪。 确实,SQL 数据库是有缺点的。但在绝大多数的案例中,庞大的社区,简单的语言,以及有强大的 RDBMS 作为其基础,使得 SQL 成为了最好的选择之一。 为什么我们在 SQL 诞生 50 年后还一直使用它呢?因为它能用,而且在 90% 的情况中都能完成任务。这对于身处越来越复杂的技术与集成环境中的开发者而言,就是最大的优点。

SELECT SUM(Value_USD) AS California_Revenue_Q3 FROM Transactions WHERE Location = ‘California’ AND DATEPART(q, Date) = 3 AND YEAR(Date) = 2020;SELECT Location, SUM(Value_USD) AS Revenue_Q3 FROM Transactions WHERE DATEPART(q, Date) = 3 AND YEAR(Date) = 2020 GROUP BY Location ORDER BY Location;SELECT TOP 5 Location, SUM(Value_USD) AS Revenue_Q3 FROM Transactions WHERE DATEPART(q, Date) = 3 AND YEAR(Date) = 2020 GROUP BY Location ORDER BY SUM(Value_USD) DESC;