Tsql 如何在IF语句中使用WHERE

Tsql 如何在IF语句中使用WHERE,tsql,Tsql,我想做以下工作: IF [Question ID] = 'Q1' AND [Textual Answer] = 'Satisfied' THEN [Textual Answer] WHERE [Antwoord-ID] = [Antwoord-ID] AND [Question ID] = 'Q3' END 如何在IF语句中包含WHERE?SQL语法是 选择 案例 当[问题ID]=“Q1”和[文本答案]=“满意”时,则[文本答案] 结束 其中[Antwoord ID]=[Antwoord

我想做以下工作:

IF [Question ID] = 'Q1' AND [Textual Answer] = 'Satisfied' 
THEN [Textual Answer] WHERE [Antwoord-ID] = [Antwoord-ID] AND [Question ID] = 'Q3' END 
如何在IF语句中包含WHERE?

SQL语法是

选择
案例
当[问题ID]=“Q1”和[文本答案]=“满意”时,则[文本答案]
结束
其中[Antwoord ID]=[Antwoord ID]
和[问题ID]=“Q3”

然而,正如@AhmedShefeer所指出的,当您试图同时期望
[Question ID]
'Q1'
'Q3'
时,这将始终是空的

检查下面的代码-您可以在SQL Server中使用IIF()函数

SELECT 
   IIF( ([Question ID] = 'Q1' AND [Textual Answer] = 'Satisfied'), [Textual Answer] ,'') AS [Answer] --Give your else case instead of ''
WHERE [Antwoord-ID] = [Antwoord-ID] 
AND [Question ID] = 'Q3';

[问题ID]怎么可能同时是“Q1”和“Q3”?也许你可以解释一下你想要实现什么?我的意思是,总体思路。样本数据和期望的结果将非常有帮助。非常感谢。该数据包含数据透视测量数据。所以每个填写的调查都有相同的问题ID。这就是为什么我不会得到空值。