数据库里面时间保存精确到秒了就如2012-07-13 13:27:08这样的,但是我想在查询的时候只精确到天,如果只查询某天的可以这样写select *from timin1 where datatime like'%" + this.txtKeyWord.Text.Trim() + "%'",如果是几天之类的话用between怎么写呢?求解答!!!

解决方案 »

  1.   

    你的this.txtKeyWord.Text是什么 2012-07-13这样的值,不是的话在程序中转下若是这样取,当天的:"select *from timin1 where convert(varchar(10),datatime,120)='" + this.txtKeyWord.Text.Trim().ToString("yyyy-MM-dd")几天的"select *from timin1 where convert(varchar(10),datatime,120) between'" + this.txtKeyWord.Text.Trim().ToString("yyyy-MM-dd")+"' and '"+this.txtKeyWord2.Text.Trim().ToString("yyyy-MM-dd");//另一个日期
      

  2.   

    http://blog.csdn.net/xianfajushi/article/details/4773217
      

  3.   

    数据库字段是varchar的话
    "select * from timin1 where datatime >= '" + txtKeyWord.Text.Trim() + " 00:00:00' and datatime <= '" + txtKeyWord.Text.Trim() + " 23:59:59'";
      

  4.   

    我写的两个文本框都成了txtKeyWord了,应该是两个不同的文本框。
    其实最好用DateTimePicker控件,以免你输入的时间格式错误
      

  5.   

    当天
    select *from timin1 where  DateDiff(dd, datatime , '" + txtKeyWord.Text.Trim() + "') = 0 几天( txtKeyWord.Text <datetime < txtKeyWord2.Text)
    select *from timin1 where  DateDiff(dd, datatime , '" + txtKeyWord.Text.Trim() + "') <= 0 and DateDiff(dd, datatime , '" + txtKeyWord2.Text.Trim() + "') >= 0