sql server where in case when
时间: 2023-08-22 14:08:36 浏览: 52
可以使用SQL Server中的CASE WHEN语句来创建带有WHERE IN子句的条件。下面是一个示例:
```sql
SELECT column1, column2, ...
FROM table
WHERE column3 IN (
CASE
WHEN condition1 THEN values1
WHEN condition2 THEN values2
ELSE values3
END
);
```
在上面的示例中,您可以根据不同的情况选择不同的值。当满足特定条件时,CASE WHEN语句会返回相应的值。这些值将用于WHERE IN子句中的过滤条件。
请记住,根据您的具体需求,您需要相应地调整条件和值。上述示例仅为演示目的。
相关问题
sqlserver where case when
可以使用 SQL Server 中的 CASE 表达式在 WHERE 子句中创建条件。以下是一个示例:
```
SELECT *
FROM your_table
WHERE
CASE
WHEN condition1 THEN column1
WHEN condition2 THEN column2
ELSE column3
END
operator value
```
在以上语法中,您需要将 `condition1`、 `condition2` 等替换为您希望使用的条件,将 `column1`、 `column2` 等替换为您希望比较的列名,将 `operator` 替换为比较运算符(如 =、 <、 > 等),将 `value` 替换为您希望比较的值。请注意,CASE 表达式将会返回一个值,该值将与您在 `operator` 后提供的值进行比较。如果比较结果为真,则该行将被包含在结果集中。
sqlserver case when in
引用\[1\]:主要代码 select case when sub.JsonData is NULL then tem.JsonData else sub.JsonData end as JsonData, case when sub.JsonData is NULL then ‘1’ else ‘0’ end as IsSubJson , sub.ID as subId,tem.ID as temID from T_table_subject as sub inner join T_Table_Template as tem on sub.TemplateID=tem.ID where sub.IsDelete=0。
问题:sqlserver case when in是什么意思?
回答: 在SQL Server中,CASE WHEN语句是一种条件表达式,用于根据给定的条件返回不同的结果。在给定的查询中,CASE WHEN语句用于根据sub.JsonData是否为NULL来选择返回tem.JsonData还是sub.JsonData。如果sub.JsonData为NULL,则返回tem.JsonData,否则返回sub.JsonData。此外,CASE WHEN语句还使用了IN关键字,用于判断sub.JsonData是否在指定的条件中。在这个查询中,当sub.JsonData为NULL时,IsSubJson的值为1,否则为0。\[1\]
#### 引用[.reference_title]
- *1* [sqlserver case when 判断null](https://blog.csdn.net/m0_37121645/article/details/116147225)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]