我来自 MySQL,现在在 SQL Server 中工作,编写一个存储过程,需要根据 Description 列中的值在“like”子句中设置一个值。不确定我是否应该声明一个变量(@desc),然后以某种方式设置它是否有更简单的方法?
伪代码:
DECLARE @desc varchar(255);
IF [Description] LIKE '%KK%'
SET @desc = 'KDues';
ELSE
SET @desc = 'BDues';
实际查询
SELECT
Description,AmountDue
[...]
WHERE order_date BETWEEN @fiscalYearBeginDate AND @fiscalYearEndDate
AND [Description] LIKE '%'+@desc+'%'
解决这个问题的最佳方法是什么?不确定如何在此特定场景中使用 IF/ELSE 或 CASE。谢谢