为什么我不能匹配破折号之间的值?例如:2016-05-20,当我尝试使用类似功能匹配数字5时,即使05也没有结果,但如果我将匹配2016年和20,则会产生结果.我如何在日期中匹配月份?
public IEnumerable<NCABal> FindByNCABalDate(Int32 Month)
{
var query = @"SELECT * FROM [dbo].[NCA_Balance] WHERE NCABalDate LIKE '%"+ @Month +"%'";
return this._db.Query<NCABal>(query).ToList();
}
Run Code Online (Sandbox Code Playgroud)
当我输入5或05时,不会显示任何结果.
//for searching month
var query = @"SELECT * FROM [dbo].[NCA_Balance] WHERE Datepart(mm,NCABalDate) = 5";
//for searching year
var query = @"SELECT * FROM [dbo].[NCA_Balance] WHERE Datepart(yyyy,NCABalDate) = 2016";
//for searching day
var query = @"SELECT * FROM [dbo].[NCA_Balance] WHERE Datepart(dd,NCABalDate) = 20";
//for searching month,year and day
var query = @"SELECT * FROM [dbo].[NCA_Balance] WHERE Datepart(mm,NCABalDate) = 5 and Datepart(yyyy,NCABalDate) = 2016 and Datepart(dd,NCABalDate) = 20";
Run Code Online (Sandbox Code Playgroud)