设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[窗体] 窗体查询语句请教

[复制链接]
跳转到指定楼层
1#
发表于 2011-3-22 17:14:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
多次在论坛中请教对于窗体查询的例句,但还是没有全弄明白,又遇到问题再次请教。

字段1为窗体查询的字段,格式为YYYY-MM
字段2为子窗体中对应的字段,格式为YYYY-MM-DD

想在字段1中输入2011-09,查询到字段2中在2011-09之前的数据。

初步写的语句为:   

        If Not IsNull(Me.字段1) Then
        strWhere = strWhere & "([字段2] like '#" & Me.字段1 & "#') AND "
    End If

需要解决两个问题:
1. 将字段2的格式用FORMAT语句改为YYYY-MM。
2. 将LIKE改为< =。
我自已试着改了几下,没有臧功,请指教。

谢谢
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2011-3-22 18:54:48 | 只看该作者
在子窗体中加一个年月字段即可,子窗体来源中
3#
发表于 2011-3-22 19:14:02 | 只看该作者
是用窗体筛选功能么?改成:
      If Not IsNull(Me.字段1) Then
        strWhere = strWhere & "([字段2] like '*" & Me.字段1 & "'*') AND "
    End If
试试看?
事实上,我并不建议两个字段格式不一致的做法。因为这样容易出错,调试起来也比较麻烦。这里只以单个日期字段来做子窗体筛选,相信多几个字段LZ应该可以对付得来吧?

做成查询,也许会更好些:


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
4#
 楼主| 发表于 2011-3-23 09:13:55 | 只看该作者
非常感谢两位的解答,特别是“ROYCH”的详细回复,还做出了示例。

ROYCH做的第一个示例,就是我要的效果,只是还略有不同。我再解释一下情况,这个简易数据库,是用于统计一些证书的有效期,因此字段2的内容就会是YYYY-MM-DD,而字段1是想要查找,在“2011-10”月份,以前到期的证书,以便提前做安排,这样其格式就只能是“YYYY-MM”,所以没有办法变成两个段。

ROCYH做的示例中,查询的字段1数据是来源于字段2的,而我查询时是要自行输入合适的月份,不过经ROCYH的提醒,想到了用模糊查询的“*”号,只是不会套用在日期的格式中。

现在需要请教的是,请将以下字段,改为日期格式的语句:(目前仅适用于文本):
If Not IsNull(Me.字段1) Then
        strWhere = strWhere & "([字段2] like '*" & Me.字段1 & "'*') AND "
    End If

希望能够再提供帮助
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-13 00:24 , Processed in 0.100500 second(s), 28 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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