在 .NET 计算中将 SQLite 数据库中的空值视为零值的最有效方法是什么?我使用实体框架。
假设我有:
Dim result as Double
result = e_employee_salary * e_index
其中 e_employee_salary 和 e_index 以及 SQLite 数据库中的字段,但其中一个或两个可以为空,在这种情况下,我想在上述计算中将它们视为零值。
我正在寻找最有效的方法来做到这一点,因为这些计算出现在许多属性获取器中,并且被高频调用。
您可能有两种方法:使用编程语言,如@Claudio 或使用 SQLite 查询:
SELECT IFNULL(e_employee_salary, 0.0), IFNULL(e_index, 0.0), ... FROM ...
这样,您将始终从数据库中获取非空值。
我可能在你的问题上遗漏了一些东西,但我想说你可以使用
If(e_employee_salary, 0) * If(e_index, 0) // VB
(e_employee_salary ?? 0) * (e_index ?? 0) // C#