通过公共表达式改进您的SQL逻辑
通过优化SQL逻辑来提升公共表达能力
使逻辑更容易编写、阅读、解释和维护
将你的衣物乱堆起来,希望一切能顺利可能不是一个好的长期管理策略。稍后可能很难实现:
从堆中选择袜子
。
当你需要一件衬衫时,你肯定会遇到困难:
从堆中选择不起皱的衬衫
。
和管理衣物一样,积极管理SQL逻辑也有明显的好处。
在本文中,我们将探讨常用表达式(CTEs)如何改进你的SQL逻辑。意大利面代码很少是好代码,这对SQL和任何编程语言来说都是正确的。在数据管理和工程中,并没有银弹。然而,保持逻辑有条理和易于审查只会对你有所帮助。让我们深入探讨吧!
常用表达式是什么样子的?
我有时称它们为WITH
子句。为什么?让我们看一个例子:
我把它们称为WITH
语句,因为它们总是以… WITH
开始。
一看就能明白正在发生什么有多容易吗?有三个部分:
- 识别“高价值客户”的查询。
- 识别“新客户”的查询。
- 最终查询阶段在“高价值客户”和“新客户”之间进行内连接,提供一个只包含同时存在这两个类别中的客户的结果集。
另一种方法
在我了解常用表达式(CTEs / WITH
语句)之前,我可能会这样处理这个查询: