访问报表/查询设计
Posted
技术标签:
【中文标题】访问报表/查询设计【英文标题】:Access Report/Query Design 【发布时间】:2014-03-07 22:22:38 【问题描述】:我正在尝试在 Access 中设计一个从 3 个单独的表格中获取信息的报告。
表格布局如下:
主用户表: 用户 ID(主键) 名字 姓 全名(名字和姓氏字段的组合)
好友表: FriendID(主键) 用户 ID(外键) 名字 姓 街道地址 城市 状态 拉链 电话号码 CommentID(外键)
评论表: 评论ID 评论
对于此示例,假设主用户表中有 Jane Doe 记录,然后她有三个朋友 Mary Doe、Lotta Doe 和 Pisa Doe。每个朋友还有3个cmets。
根据这些信息,我构建了一个查询,其中包含所有 3 个表和所有可用字段,以及主用户表 FullName 列上的条件:[输入用户全名:]
我试图在报告中获得的是主要用户 FullName 作为标题,如有必要,将重复每一页,然后列出朋友姓名和地址信息一次,然后打印链接到该朋友的所有 cmets(3 in本例)。
所以报告看起来像:
简·多伊
玛丽·多伊
主街 123 号 任何地方,ST,12345 123-456-7890 评论: 周五吃午饭 评论: 周六生日 评论: 有一个叫杰弗里的孩子
洛塔·多伊
主街 124 号 任何地方,ST,12345 123-456-7890 评论: 周二吃午饭 评论: 周五去健身房 评论: 周一飞往洛杉矶
比萨杜伊
主街 123 号 任何地方,ST,12345 123-456-7890 评论: 讨厌披萨 评论: 有蓝房子 评论: 有六个孩子
在创建报告时,我按主要人分组,然后是朋友,然后是评论,但我总是以朋友列表中的第一个人结束,但所有 cmets。关于我应该如何创建查询和报告以获得所需结果的任何建议?提前致谢!
【问题讨论】:
你能把你的报告设计截图吗?有点不相关,如果朋友也是主用户怎么办? 【参考方案1】:您的Comment
表没有包含足够的信息来支持您的报告需求。我建议以下列:
CommentID
ByUserID
(Users
表的外键,UserID
)
AboutFriendID
(Friends
表的外键,FriendID
)
Comment
更改上述内容并填写所有用户、朋友和评论数据后,您必须从Friends
表中删除CommentID
列。
现在您需要调整作为报表数据源的基本查询,以便为您提供以下列输出(例如):
UserFullName
FriendFullName
FriendAddress
FriendPhone
UserCommentAboutFriend
您可以使用这种数据格式来获取您需要的报告。
【讨论】:
您的建议和修复表关系错误使我能够生成我正在寻找的报告。以上是关于访问报表/查询设计的主要内容,如果未能解决你的问题,请参考以下文章