ado.net
2012-07-22 100 views 1 likes 
1

我想过滤我的视图根据格式为“DD/MM/YYYY”的选定日期,但我的dataview列的日期为“DD/MM/YYYY hh:mm: ss“格式。我想根据选定日期过滤视图,而不考虑时间。我如何在RowFilter中将MATCH_DATE列转换为格式”DD/MM/YYYY“格式。使用Rowfilter过滤数据视图的日期列

dtFixt.DefaultView.RowFilter = "MATCH_DATE='" & CType(calSeason.SelectedDate,DateTime).ToString("dd/MM/yyyy") & "'" 

回答

0

您可以将MATCH_DATE栏为 “DD/MM/YYYY” 格式转换在您看来,使用CONVERT功能如下:

CONVERT(VARCHAR(10), MATCH_COLUMN, 103) 

103是一种转换的任何日期的日期格式代码采用“DD/MM/YYYY”格式。

有关不同日期格式的更多详细信息,请参阅文章Date Formats

+0

我试过了,但有一个错误,如'表达式包含未定义的函数调用VARCHAR()'。发生在运行时@shant。 dtFixt.DefaultView.RowFilter =“CONVERT(VARCHAR(10),MATCH_DATE,103)='”&CType(calSeason.SelectedDate,DateTime).ToString(“dd/MM/yyyy”)&“'” – Marimuthu 2012-07-22 10:22:53

+0

你正确的说明,但你需要转换视图中的数据库而不是代码中的列。所以,你的看法会改变从...... SELECT MATCH_COLUMN,COL1,COL2 .... 到... SELECT CONVERT(VARCHAR(10),MATCH_COLUMN,103),COL1,COL2 ... 让我知道,如果你需要更多的细节。 – Shant 2012-07-22 10:27:22

+0

达作品很好谢谢@ shant.but有没有办法改变视图? – Marimuthu 2012-07-22 10:34:16

相关问题