设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

123下一页
返回列表 发新帖
查看: 7873|回复: 24
打印 上一主题 下一主题

[查询] 如何实现查询中的字段合并

[复制链接]
跳转到指定楼层
1#
发表于 2009-4-14 23:44:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
想通过查询或代码把表中相同类别的字段合并起来。

本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2009-4-15 08:32:58 | 只看该作者
查询SQL怎么写我不太会
我是用函数,你看看是不是这样的效果

本帖子中包含更多资源

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

x
3#
发表于 2009-4-15 08:47:35 | 只看该作者
学习啊
4#
 楼主| 发表于 2009-4-15 14:51:27 | 只看该作者
本帖最后由 linjingdr 于 2009-4-16 22:00 编辑

谢谢asklove 的帮助!非常好的解决方法!成功应用
5#
发表于 2009-5-7 01:56:59 | 只看该作者
非常好的解决方法!
6#
发表于 2009-5-11 21:59:02 | 只看该作者
不错,函数比写SQL语句更简洁、高效,学习了!
7#
发表于 2009-6-22 21:59:04 | 只看该作者
期待
8#
发表于 2009-6-22 23:12:39 | 只看该作者
正需要,谢谢!
9#
发表于 2009-6-23 00:34:29 | 只看该作者
本帖最后由 红尘如烟 于 2009-6-23 00:41 编辑

写了一个通用函数:

  1. Public Function JoinField(TableName As String, FieldName As String, WhereCondition As String, _
  2. Optional Delimiter As String = " ") As String
  3. On Error GoTo ErrorHandler

  4. 'TableName 必需,表名
  5. 'FieldName 必需,要合并记录的字段名
  6. 'WhereCondition 必需,分组条件表达式
  7. 'Delimiter 可选,分隔符,默认为空格符

  8.     Dim rst As New ADODB.Recordset   
  9.     Dim strSQL As String

  10.     strSQL = " SELECT   " & FieldName & _
  11.              " FROM     " & TableName & _
  12.              " WHERE    " & WhereCondition & _
  13.              " ORDER BY " & FieldName
  14.     rst.Open strSQL, CurrentProject.Connection, adOpenKeyset, adLockReadOnly
  15.     Do Until rst.EOF
  16.         If JoinField = "" Then
  17.              JoinField = rst(FieldName)
  18.         Else
  19.             JoinField = JoinField & Delimiter & rst(FieldName)
  20.         End If
  21.         rst.MoveNext
  22.     Loop

  23.     rst.Close
  24.     Set rst = Nothing

  25. ExitFunction:
  26.     Exit Function

  27. ErrorHandler:
  28.     MsgBox Err.Number & Err.Description
  29.     Resume ExitFunction
  30. End Function
复制代码
在查询中的运用实例:
  1. SELECT DISTINCT姓名,处方名, JoinField("表1","药物","[姓名]='" & [姓名] & "' AND [处方名]='" & [处方名] & "'",",") AS 药物
  2. FROM 表1
  3. ORDER BY 姓名,.处方名;
复制代码
10#
发表于 2009-8-5 19:45:50 | 只看该作者
学习
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-1 21:29 , Processed in 0.113017 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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