gpt4 book ai didi

sql - 如何在 SQL SELECT 中执行 IF...THEN?

转载 作者:行者123 更新时间:2023-12-01 16:14:04 25 4
gpt4 key购买 nike

如何在 SQL SELECT 语句中执行 IF...THEN

例如:

SELECT IF(Obsolete = 'N' OR InStock = 'Y' ? 1 : 0) AS Saleable, * FROM Product

最佳答案

CASE 语句与 SQL 中的 IF 最接近,并且在所有版本的 SQL Server 上都受支持。

SELECT CAST(
CASE
WHEN Obsolete = 'N' or InStock = 'Y'
THEN 1
ELSE 0
END AS bit) as Saleable, *
FROM Product

如果您希望结果为 bool 值,则只需使用 CAST 运算符。如果您对 int 感到满意,则可以这样做:

SELECT CASE
WHEN Obsolete = 'N' or InStock = 'Y'
THEN 1
ELSE 0
END as Saleable, *
FROM Product

CASE 语句可以嵌入到其他 CASE 语句中,甚至可以包含在聚合中。

SQL Server Denali (SQL Server 2012) 添加 IIF声明也可在 access 中找到(Martin Smith指出):

SELECT IIF(Obsolete = 'N' or InStock = 'Y', 1, 0) as Saleable, * FROM Product

关于sql - 如何在 SQL SELECT 中执行 IF...THEN?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63447/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com