![]() |
1
7
|
![]() |
2
3
T-SQL CASE 声明就是你要找的。对下面代码的修改应该对您有用:
|
![]() |
3
0
当您构建一个与您尝试的查询类似的查询时,查询优化器必须创建一个计划来适应 任何 参数的值。这将导致最坏的计划。因此,即使您想出了正确的表达式(使用case),由于矛盾或条件,查询也将非常糟糕。 将IFS分为SQL条件,并对每种情况使用不同的查询:
尽管表面上很难看,缺乏优雅,但这是最好的方法。它的主要特点是可维护性问题,为了解决使用动态SQL构建查询时存在的一种可行的替代方法。 归根结底,if条件的复杂性是一种代码味道,您的数据访问API做了太多应该是独立的API入口点的事情。 |
![]() |
4
0
编辑:类似于其他一些答案。只是稍微简单一点。 |
|
Johnny T · 基于当前值的SQL合并表[重复] 7 月前 |
![]() |
John D · 需要为NULL或NOT NULL的WHERE子句 7 月前 |
![]() |
ojek · 如何对SQL结果进行分组和编号? 7 月前 |
![]() |
senek · 如何在PL/SQL中将选择结果(列)放入数组中 7 月前 |
![]() |
Sax · 规范化Google表格(第一步) 7 月前 |
![]() |
Jatin · 检索卷计数的动态sql抛出错误语法错误[关闭] 7 月前 |
![]() |
Andrus · 如何在sql中查找第二个匹配项 7 月前 |