SQL Server 中的条件 WHERE 子句
在 SQL Server 中,条件 WHERE 子句允许您根据特定条件指定不同的筛选条件。当您需要根据参数或变量的值包含或排除查询结果中的数据时,这非常有用。
考虑以下场景:
您希望根据以下条件从名为 [MM] 的表中检索数据:
您最初尝试使用的 CASE 语句在这种情况下不起作用。相反,您可以使用以下条件 WHERE 子句:
<code class="language-sql">SELECT DateAppr, TimeAppr, TAT, LaserLTR, Permit, LtrPrinter, JobName, JobNumber, JobDesc, ActQty, (ActQty-LtrPrinted) AS L, (ActQty-QtyInserted) AS M, ((ActQty-LtrPrinted)-(ActQty-QtyInserted)) AS N FROM [test].[dbo].[MM] WHERE DateDropped = 0 AND ( (ISNULL(@JobsOnHold, 0) = 1 AND DateAppr >= 0) OR (ISNULL(@JobsOnHold, 0) != 1 AND DateAppr != 0) )</code>
在此代码中:
通过使用条件 WHERE 子句,您可以编写更灵活和动态的 SQL 查询,而无需使用动态 SQL 或涉及 if-else 语句的变通方法。有关条件 WHERE 子句的更多信息,请参阅提供的答案中链接的文档。
以上是如何在 SQL Server 中实现条件 WHERE 子句以根据参数过滤数据?的详细内容。更多信息请关注PHP中文网其他相关文章!