设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[查询] 求助:如何设计查询取同类字段的问题

[复制链接]
跳转到指定楼层
1#
发表于 2009-9-8 23:31:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如附件,我想把表ExpnDTL10102中ActExp_Acct,ActExp_AcctDescription,PPExp_Acct和PPExp_AcctDescription4个字段去掉,用SQL代码只取"20"和"P20"开头的字段(当然不是直接把所有的字段拉进查询那么简单),如何改动查询10102ExpnDetail_SQLQry才能做到这点呢?谢谢!

本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2009-9-8 23:50:14 | 只看该作者
搜一下动态更改查询的SQL语句的相关示例
dao:
qqrt="select count(*) from table1"
Set qry = CurrentDb.QueryDefs("qwer")
qry.SQL = QQRT
3#
 楼主| 发表于 2009-9-9 22:24:37 | 只看该作者
还是不太明白.上面语句中"qwer"代表什么含义呢?
我所需要的查询要通过DAO的方法才能达到吗?鉴于本人能力有限,写复杂的VBA语句可能有些吃力.有简单一些的吗?
再次感谢版主的热心指点!
4#
发表于 2009-9-10 09:45:45 | 只看该作者
你的命名看起来晕。
5#
发表于 2009-9-10 10:04:46 | 只看该作者
  1. Private Sub Command0_Click()
  2.     Dim rs As New ADODB.Recordset
  3.     Dim qdf As DAO.QueryDef
  4.     Dim sSQL As String
  5.     Dim flds As String
  6.     Dim Bj As String
  7.     Dim i As Integer
  8.     With rs
  9.         .Open "ExpnDTL10102", CurrentProject.Connection, adOpenKeyset, adLockReadOnly
  10.         For i = 0 To .Fields.Count - 1
  11.             Bj = Left(.Fields(i).Name, 2)
  12.             If Bj = "20" Or Bj = "P2" Then
  13.                 flds = flds & "[" & .Fields(i).Name & "],"
  14.             End If
  15.         Next
  16.         .Close
  17.     End With
  18.     If Len(flds) <> 0 Then
  19.         flds = Left(flds, Len(flds) - 1)
  20.         sSQL = "select " & flds & " from ExpnDTL10102"
  21.         Set qdf = CurrentDb.QueryDefs("Q")
  22.         qdf.SQL = sSQL
  23.         qdf.Close
  24.         Set qdf = Nothing
  25.         DoCmd.OpenQuery "Q"
  26.     End If
  27.     Set rs = Nothing
  28. End Sub
复制代码

本帖子中包含更多资源

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

x
6#
发表于 2009-9-10 13:00:11 | 只看该作者
还是不太明白.上面语句中"qwer"代表什么含义呢?
我所需要的查询要通过DAO的方法才能达到吗?鉴于本人能力有限,写复杂的VBA语句可能有些吃力.有简单一些的吗?
再次感谢版主的热心指点!
RickyZjw-3721 发表于 2009-9-9 22:24

"qwer"只是代表一个查询名称,你应该通过帮助查找QueryDefs的用法和相关信息,帮助中也有示例,看懂了示例也就了解了其参数是什么了.

如果你的字段名基本上是固定的,直接更改查询定义即可,如有规律的变动的字段,你先要获得字段名再分析有用的字段组成有效的SQl语句即可.
7#
 楼主| 发表于 2009-9-11 22:36:14 | 只看该作者
真的很感谢两位版主的热心解答,你们辛苦了!Henry D. Sy版主的VBA水平在下很是羡慕,学习了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-3 05:28 , Processed in 0.091844 second(s), 31 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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