如何使用 like 运算符查找部分操作数是参数的模式

How to use like operator to find patterns where part of operand is a parameter

我的 table 有一个名为 project 的文件,它可以以任何字母、中间的一些数字、破折号和当前财政年度开头。 我想搜索名称以 p 开头并以当年结尾的所有项目。 我有一个函数 returns 当前财政年度作为 int。 我怎样才能做到这一点。 我想要这样的东西:

declare @Year int;
set @Year = the output from CurrentFiscalYear function;
select
project
from MyTable
where project like 'P%-@Year'

使用 + 运算符将变量附加到字符串。由于 Int 类型的 @Year 您需要在附加 'P%-'

之前将其转换为 Varchar

试试这个

declare @Year int;
set @Year = the output from CurrentFiscalYear function;
select
project
from MyTable
where project like 'P%-'+cast(@Year as varchar(4))+'
WHERE project like 'P%-' + @Year

我相信这是 sql 服务器中的正确格式