在SQL SELECT语句中实现IF-THEN逻辑
SQL编程中一个常见的需求是执行条件检查,并根据结果返回不同的结果。本文将探讨如何在SQL SELECT语句中实现IF...THEN逻辑。
使用CASE语句
CASE语句相当于SQL中的IF语句。它允许您指定多个条件和相应的操作。
<code class="language-sql">SELECT CASE WHEN condition1 THEN result1 WHEN condition2 THEN result2 ELSE result3 END AS conditional_column, * FROM table_name</code>
例如,要根据产品的Obsolete和InStock值检查产品是否可销售:
<code class="language-sql">SELECT CAST( CASE WHEN Obsolete = 'N' OR InStock = 'Y' THEN 1 ELSE 0 END AS bit) AS Saleable, * FROM Product</code>
使用IIF语句 (SQL Server 2012及以上)
SQL Server 2012中引入的IIF语句简化了条件语句的语法。其格式如下:
<code class="language-sql">SELECT IIF(condition, result_if_true, result_if_false) AS conditional_column, * FROM table_name</code>
上面的例子可以使用IIF语句改写为:
<code class="language-sql">SELECT IIF(Obsolete = 'N' OR InStock = 'Y', 1, 0) AS Saleable, * FROM Product</code>
其他说明
以上是如何在 SQL SELECT 语句中实现 IF-THEN 逻辑?的详细内容。更多信息请关注PHP中文网其他相关文章!