Office中国论坛/Access中国论坛

标题: 请教高手这段日期段查询的SQL语句怎么写 [打印本页]

作者: Dragxixi    时间: 2007-6-7 19:59
标题: 请教高手这段日期段查询的SQL语句怎么写
请教高手这段日期段查询的SQL语句该怎么改?

   If IsNull(Me.Input_date_min) And Not IsNull(Me.Input_date_max) Then
      STSQL = STSQL & " and [Input_date] <= '" & CDate(Me.Input_date_max.Text) & "'"

   ElseIf Not IsNull(Me.Input_date_min) And IsNull(Me.Input_date_max) Then
      STSQL = STSQL & " and [Input_date] >= '" & CDate(Me.Input_date_min.Text) & "'"

   ElseIf Not IsNull(Me.Input_date_min) And Not IsNull(Me.Input_date_max) Then
      STSQL = STSQL & " and [Input_date] between '" & CDate(Me.Input_date_min.Text) & "' and '" & CDate(Me.Input_date_max.Text) & "'"

      
   End If

   If IsNull(Me.Revise_date_min) And Not IsNull(Me.Revise_date_max) Then
      STSQL = STSQL & " and [Revise_date] <= '" & CDate(Me.Revise_date_max.Text) & "'"

   ElseIf Not IsNull(Me.Revise_date_min) And IsNull(Me.Revise_date_max) Then
      STSQL = STSQL & " and [Revise_date] >= '" & CDate(Me.Revise_date_min.Text) & "'"

   ElseIf Not IsNull(Me.Revise_date_min) And Not IsNull(Me.Revise_date_max) Then
      STSQL = STSQL & " and [Revise_date] between '" & CDate(Me.Revise_date_min.Text) & "' and '" & CDate(Me.Revise_date_max.Text) & "'"

   End If
                              
   Me.F_pur_data.Form.RecordSource = STSQL

运行时提示:除非控件获得焦点,否则您不能引用该控件的属性或者方法 (补充一点,这是在ADP下的)

我试过不要.text,但只有4个条件都输入时,才能出结果,否则就提示类型不匹配...

要是先输入4个条件,然后再删除掉其中1个或2个或3个,也可以出结果....


作者: Dragxixi    时间: 2007-6-7 20:00
在线等待方法,求高手指教!


作者: 谢健    时间: 2007-6-7 20:02
我不是高手,我闪一边!
作者: Dragxixi    时间: 2007-6-7 20:07
....会的人不一定是高手,不会的人也不一定不是高手,但可以肯定的是:如果谁帮我搞定了,那我相信他肯定是个高手
作者: tz-chf    时间: 2007-6-7 21:01
我只用between and

不要用cdate,也不要用.text

如果只有Me.Input_date_max,那么就从1970-01-01到max

同理,只有Me.Input_date_min,那么就从min到2050-01-01,足够用了吧。

max和min都填,这个你自己会做。between min and max
作者: Dragxixi    时间: 2007-6-7 22:52
谢谢tz-chf

不过还有一问题,就是假如我设了一清除查询条件的按钮

在单击事件中写入:

me.Input_date_min=""

me.Input_date_max=""

me.Revise_date_min=""

me.Revise_date_max=""

再执行查询时就不行了,没有结果显示哦!

是不是不能用上面这种清除方法?
作者: andymark    时间: 2007-6-7 23:11
下面的也一起清空了吗

STSQL=""




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3