asp.net怎么实现一个时间段的查询,返回查询结果显示在GridView控件中??
数据表的字段为varchar型的,字段名为dtime,,两个TextBoxt输入查询的时间,格式如2011-11-11,而保存在数据表的数据是以11.11.11的格式存储...
数据表的字段为varchar型的,字段名为dtime,,两个TextBoxt输入查询的时间,格式如2011-11-11,而保存在数据表的数据是以11.11.11的格式存储,且绑定到GridView中显示也是这个格式。那么,怎么实现查询两个Textbox时间内的数据,然后重新绑定到GridView中??
展开
2个回答
展开全部
呵呵。正如你脑海中想象的那样:
if(TextBox3.Text!=string.Empty&&TextBox4.Text!=string.Empty)
{
if (strWhere != string.Empty)
{
strWhere += " and dtime between '" + TextBox3.Text + "' and '" + TextBox4.Text + "'";
}
else
{
strWhere += " dtime between '" + TextBox3.Text + "' and '" + TextBox4.Text + "'";
}
}
数据库中的11.11.11和输入查询的格式2011-11-11这两个在数据库中查询的时候不矛盾,可以互相用。就用2011-11-11的 格式也可以查询到11.11.11格式的时间。
注意:textbox3和textbox4是两个文本框的名字。
strwhere的前面是 select * from tables where dtime '"+strwhere+"';
if(TextBox3.Text!=string.Empty&&TextBox4.Text!=string.Empty)
{
if (strWhere != string.Empty)
{
strWhere += " and dtime between '" + TextBox3.Text + "' and '" + TextBox4.Text + "'";
}
else
{
strWhere += " dtime between '" + TextBox3.Text + "' and '" + TextBox4.Text + "'";
}
}
数据库中的11.11.11和输入查询的格式2011-11-11这两个在数据库中查询的时候不矛盾,可以互相用。就用2011-11-11的 格式也可以查询到11.11.11格式的时间。
注意:textbox3和textbox4是两个文本框的名字。
strwhere的前面是 select * from tables where dtime '"+strwhere+"';
更多追问追答
追问
问题是,数据库中的时间有可能是有两个,如11.10.02;11.10.03这样的,不需要使用like子句吗?而查询时选择的时间格式是2011-10-02,我的思路是先要截取子串,但是不知道怎么使用like子句
追答
第一,你是要获得两个时间段内的时间,所以说不需要使用like,第二,我也和你说了数据库里面即便是2011-10-10,或者是11-10-10,或者是11.10.10这样的时间它都可以自动的检索出来的。所以说按照我说的方法就应该能出来的,你先试一试。根本不需要你说的那样的。明白吗?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询