解决方案 »

  1.   

    select * from table where @data>=startday and  @data<= endday
      

  2.   

    本帖最后由 bdmh 于 2014-05-13 10:12:19 编辑
      

  3.   


    这个@data是什么? 我数据库里没有保存现在的日期呀
      

  4.   


    这个@data是什么? 我数据库里没有保存现在的日期呀
    @data就是你说的此刻的时间,一个变量,随意命名的
      

  5.   


    这个@data是什么? 我数据库里没有保存现在的日期呀
    @data就是你说的此刻的时间,一个变量,随意命名的  哦,懂了。
      

  6.   


    这个@data是什么? 我数据库里没有保存现在的日期呀
    @data就是你说的此刻的时间,一个变量,随意命名的  哦,懂了。我也声明了一个变量now,可是还是会显示必须声明标量变量。
      

  7.   


    这个@data是什么? 我数据库里没有保存现在的日期呀
    @data就是你说的此刻的时间,一个变量,随意命名的
       dt = ititemBll.GetDataTable("RID='" + RRid + "'" + "And Del = 'F'" + "And @now>STARTDAY" + "@now<ENDDAY");
     
    public DataTable GetDataTable(string filter)
            {
                string sql = string.Format("SELECT * FROM {0} WHERE {1} ", TName, filter);
                return SqlHelper.ExecuteDataTable(ProDao.GetConnStr(), CommandType.Text, sql, null);
            }
      

  8.   

     查 datefdiff  的用法。 
      

  9.   


    这个@data是什么? 我数据库里没有保存现在的日期呀
    @data就是你说的此刻的时间,一个变量,随意命名的
       dt = ititemBll.GetDataTable("RID='" + RRid + "'" + "And Del = 'F'" + "And @now>STARTDAY" + "@now<ENDDAY");
     
    public DataTable GetDataTable(string filter)
            {
                string sql = string.Format("SELECT * FROM {0} WHERE {1} ", TName, filter);
                return SqlHelper.ExecuteDataTable(ProDao.GetConnStr(), CommandType.Text, sql, null);
            }
    帅哥,你的@now没有赋值,你直接这种形式吧
    DateTime now= DateTime.Now;
      dt = ititemBll.GetDataTable("RID='" + RRid + "'" + "And Del = 'F' And "+now+">STARTDAY" + now+"<ENDDAY");
      

  10.   


    这个@data是什么? 我数据库里没有保存现在的日期呀
    @data就是你说的此刻的时间,一个变量,随意命名的
       dt = ititemBll.GetDataTable("RID='" + RRid + "'" + "And Del = 'F'" + "And @now>STARTDAY" + "@now<ENDDAY");
     
    public DataTable GetDataTable(string filter)
            {
                string sql = string.Format("SELECT * FROM {0} WHERE {1} ", TName, filter);
                return SqlHelper.ExecuteDataTable(ProDao.GetConnStr(), CommandType.Text, sql, null);
            }
    帅哥,你的@now没有赋值,你直接这种形式吧
    DateTime now= DateTime.Now;
      dt = ititemBll.GetDataTable("RID='" + RRid + "'" + "And Del = 'F' And "+now+">STARTDAY" + now+"<ENDDAY");

    谢谢啊.但是我的数据库里的STARTDAY和ENDDAY是保存成20140514这样的形式的,结果还是出现错误,And20140514附近语法有错误。
      

  11.   

    select  * from table where getdate()>=startday and getdate()<=endday
      

  12.   

    这个getdate要怎么弄?
    这是sqlserver自带的获取当天日期的函数,你想怎么弄
      

  13.   

    这个getdate要怎么弄?
    这是sqlserver自带的获取当天日期的函数,你想怎么弄但是这个startday其实是string类型的呀
      

  14.   


    这个startday和endday是string,该怎么办?
      

  15.   

    首先你明知道要做日期比较为什么要把字段设计成string,然后就是如果没法改数据库,就去找sql强转日期的函数
      

  16.   

    首先你明知道要做日期比较为什么要把字段设计成string,然后就是如果没法改数据库,就去找sql强转日期的函数数据库不是我做的。
      

  17.   

    首先你明知道要做日期比较为什么要把字段设计成string,然后就是如果没法改数据库,就去找sql强转日期的函数SQL强转日期,能详细点吗?