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

时间:2016-03-15 18:48:15

标签: sql-server wildcard sql-like

我的表有一个名为项目的文件,可以从任何字母,中间的一些数字,短划线和当前会计年度开始。 我想搜索他们的名字以p开头并以当前年份结束的所有项目。 我有一个函数返回当前会计年度为int。 我怎么能做到这一点。 我想要这样的东西:

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

2 个答案:

答案 0 :(得分:1)

使用+运算符将变量附加到字符串。自@Year类型的Int后,您需要在附加Varchar之前将其转换为'P%-'

试试这个

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

答案 1 :(得分:0)

WHERE project like 'P%-' + @Year

我相信这是sql server中正确的形式