![]() |
1
5
还有另一个选项-使用coalesce在T-SQL查询中指定规则还是使用空的coalescing运算符??在代码中(也适用于LinqToSQL)。 这两种方法都只需要一次调用数据库,所以选项1的值是+1。 |
![]() |
2
2
我肯定会选择选项1。
我总是说避免多次调用数据库,除非您返回不合理的数据量和/或查询需要很长时间。 |
![]() |
3
1
如果你不关心谁的位置被返回,那么,正如迈克所说,你可以考虑合并员工和经理的位置。但是,这确实会将业务逻辑移动到您可能认为是数据访问层的地方,因此,根据您的严格程度,您可能更喜欢在其他地方强制执行这样的规则。在这种情况下,我可能会投票选择1。 |
![]() |
4
1
我知道您的模式是人为的,但正如Mike建议的那样,isNull或Coalesce语句不起作用,因为WorkingLocationID不能为空,因此员工必须有一个位置。但是,如果有一个默认位置指示员工没有位置,例如使用值0,那么使用case语句将起作用。请注意,对于所需的每个工作位置字段,都需要一个case语句。因此,查询变得类似于:
|
![]() |
5
0
尝试两者,看看哪一个在您的环境中有更好的性能,如果发生变化,保留稍后切换方法的选项。 我认为你不必选择一种解决方案,永远坚持下去。 |
![]() |
6
-1
编辑:如果必须是1,则选择:
|
![]() |
S. Jacson · 任意两台发电机的速度差(内置功能) 2 年前 |
![]() |
Sadeq Dousti · 相当于“嵌套删除”的执行性能SQL查询 2 年前 |
![]() |
Prince · 复制大型文件需要更多时间 2 年前 |
![]() |
Sagar · 为什么在循环之外声明变量会更快? 2 年前 |
![]() |
seco · 如何在不挂起页面的情况下加载JS 2 年前 |