string strQuery="select * from tablename where datetime>yyyy-mm-dd and datetime<yyyy-mm-dd+1";

解决方案 »

  1.   

    我上面所说的yyyy-mm-dd指的查询当天的时间,而yyyy-mm-dd+1是查询天的往后一天。
      

  2.   

    你可以换个做法啊
    比如你要查2003-4-10的数据
    也就是大于2003-4-9而小于2003-4-11的
    datetime 是包括具体时分秒的
      

  3.   

    sql=@"select * from tablename where Date>'{0} 0:00:00' and datetime<'{0} 23:59:59'";
    sql=string.format(sql,MyDate);
      

  4.   

    to:
    firewing(可乐)
    可否解释一下你写的吗
      

  5.   

    不要意思,没看清楚你的题目。如果放在存储过程中的话就没办法了,只好处理一下你的存储过程了。
    我的方法适用于普通Select查询
      

  6.   

    你数据库中的记录是带hh-mm-ss格式的,查询语句的hh-mm-ss为00-00-00所以早不到匹配的记录?
      

  7.   

    towyl138(五月龙) 
    这个原因我知道,就是不知如何改;
      

  8.   

    sql="select * from tablename where Date>@FirstDay and datetime<@SecondDay";
    DateTime myDate=DateTime.Parse("MM/DD/YYYY 00:00:00");//把MM/DD/YYYY替换成你需要查询的日期//如果用SqlDataAdapter
    sqlDAdapter.SelectCommand.Parameters.Add("@FirstDay",myDate);
    sqlDAdapter.SelectCommand.Parameters.Add("@SecondDay",myDate.AddDays(1));
      

  9.   

    用convert把日期转换成你所要的格式
    select * from  tablename
    where convert(nvarchar(10),dateTime,120)='2000-02-29'注:120是日期显示类型,显示为(YYYY-mm-dd hh:MM:SS)
    也可以是别的,你可以查QSL Server的帮助,对了Convert 是SQL Server才有的函数,不知你用的是不是SQL Server