今天使用DataTable.Select()函数,需求是要筛选出data(DadaTable里面的字段名,日期类型)的月份为2月的所有数据行,
代码:string expression = "datapart(MONTH,DATA) = '" + 2 + "'";
DataRow[] foundRows;// Use the Select method to find all rows matching the filter.
foundRows = myBindTable.Select(expression);报错:异常详细信息: System.Data.EvaluateException: 表达式包含未定义的函数调用 datapart()。之后把datapart()函数换成Month(),依然同样的错误!我想知道select()里面为什么那两个函数用不了,Select(string filterExpression)函数filterExpression参数说明
然后,希望能解决我的问题:有没有语句能够代替它们取出 月份为2月的所有数据行
代码:string expression = "datapart(MONTH,DATA) = '" + 2 + "'";
DataRow[] foundRows;// Use the Select method to find all rows matching the filter.
foundRows = myBindTable.Select(expression);报错:异常详细信息: System.Data.EvaluateException: 表达式包含未定义的函数调用 datapart()。之后把datapart()函数换成Month(),依然同样的错误!我想知道select()里面为什么那两个函数用不了,Select(string filterExpression)函数filterExpression参数说明
然后,希望能解决我的问题:有没有语句能够代替它们取出 月份为2月的所有数据行
如SQLselect id,name,date, MONTH(date) AS mon
from table然后你在DataTable.Select("mon=2");就OK了。另外一个小问题,SQL函数是datepart()而不是datapart()。