我有一个表中的日期格式为字符串在下面的方式YYYY-MM-DD。 数据包含若干年的数据,我想拉就在当年使用下面的查询:SQL Server - 其中Like语句的变量返回没有结果
Declare @currentYear VARCHAR(5)
Select @currentYear = year(getdate())
select *
from tablename
where datefixed like @currentYear
上面的查询没有返回任何结果。 我试过以下线程中列出的方法:Using variable in SQL LIKE statement
我错过了一些东西,但我不能把手指放在上面。
您试图在日期中使用like like for strings命令尝试在startdate和endDate之间使用 – RegBes
我们应该停止回答问题,其中OP要求帮助解决查询级别的混乱数据库设计问题。也许他们首先会开始使用正确的类型。通常情况下,查询将很简单:'WHERE YEAR(datefixed)= YEAR(GETDATE())' –
谢谢@TimSchmelter。我们的新设计使用yyyymmdd,它允许使用简单的语句和简单的语句。 –