设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 777|回复: 5
打印 上一主题 下一主题

[查询] 请教日期型作为条件的查询,急!

[复制链接]
跳转到指定楼层
1#
发表于 2008-6-23 20:49:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
表:tblA
字段:riqi (date型),a,b,c

代码如下:
Private Sub qryRec_Click()
  Dim strWhereDate As String   
    strWhereDate = " [riqi] >=" & getFirstDayOfMonth() & " and [riqi] <= " & Date
    Me.lstResult.RowSource = _
    "SELECT * FROM tblA where "  & strWhereDate
end Sub


getFirstDayOfMonth() 返回出来是date型的值
debug出来的SQL语句:
SELECT * FROM tblA where [riqi] >= 2008-06-01 and [riqi] >= 2008-06-23

问题是一直找不到数据,请问问题出在哪里,急,在线等
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2008-6-23 21:04:19 | 只看该作者
日期型用between  ... and  ... 不要用>或<
3#
 楼主| 发表于 2008-6-23 21:21:33 | 只看该作者
between  ... and  ... 试过了也不行啊
好像下面这句里面
strWhereDate = " [riqi] >=" & getFirstDayOfMonth() & " and [riqi] <= " & Date
把得到的日期型都变成了string型
是不是到sql那边就无法匹配了呢
4#
发表于 2008-6-23 21:21:33 | 只看该作者
用> 及< 或between and 都可以,但日期两边用#,比如#2008-6-1#
5#
发表于 2008-6-23 21:26:29 | 只看该作者
strWhereDate = " [riqi] >=" & getFirstDayOfMonth() & " and [riqi] <= " & Date
这里的日期被转换成了字符串,在字符串中使用日期需要加#号:
strWhereDate="[riqi]>=#" & getFirstDayOfMonth() & "# and [riqi]<=#" & Date & "#"
最好的方式是像2楼说的用Between...And...语句:
strWhereDate="[riqi] Between #" & getFirstDayOfMonth() & "# And #" & Date & "#"
6#
 楼主| 发表于 2008-6-23 21:49:03 | 只看该作者
已经解决!
多谢各位[:27]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-20 02:44 , Processed in 0.088660 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表