在 Excel 或 Access 中查询查找表

发布于 2024-09-06 08:50:57 字数 578 浏览 6 评论 0原文

我对我确定的常见情况有一个心理障碍:

我在 csv 文件中有一些数据,我需要从中做一些非常基本的报告。

数据本质上是一个表格,其中资源作为列标题,人员作为行标题,表格的其余部分由 Y/N 标志组成,如果该人有“Y”访问资源,如果没有,则为“N”。资源和人民都有独特的名称。

示例数据:

 
        Res1  Res2  Res3
Bob       Y     Y     N
Tom       N     N     N
Jim       Y     N     Y

表格太大,无法在 Excel 中简单地查看整个表格(例如 300 个资源和 600 个人),所以我需要一种方法来轻松查询和显示(一个简单的列表就可以)一个人可以访问哪些资源,给出该人的姓名。

需要使用它的人有 MS Office,而他们的 PC 上没有太多其他东西。

因此,问题是:操纵这些数据以获得我需要的报告的最佳方法是什么?我的直觉告诉我 MS Access 是最好的,但我不知道如何自动将这样的数据导入到普通的关系数据库中。如果不是 Access,也许 Excel 中的一些函数可以帮助我?

I've got a mental block about what I'm sure is a common scenario:

I have some data in a csv file that I need to do some very basic reporting from.

The data is essentially a table with Resources as column headings and People as row headings, the rest of the table consists of Y/N flag, "Y" if the person has access to the resource, "N" if they don't. Both the resources and the people have unique names.

Sample data:

 
        Res1  Res2  Res3
Bob       Y     Y     N
Tom       N     N     N
Jim       Y     N     Y

The table is too large to simply view it as whole in Excel(say 300 resources and 600 people), so I need a way to easily query and display (A simple list would be ok) what resources a person has access to, given the person's name.

The person that will need to use this has MS Office, and not much else on their PC.

So, the question is: What is the best way to manipulate this data to get the report I need? My gut says MS Access would be the best, but I can't figure out to automatically import data like this into a normal relational database. If not Access, perhaps there are some functions in Excel that could help me out?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

苏别ゝ 2024-09-13 08:50:57

您应该标准化您的数据。这将使查询更容易。例如:

table users:
UserID UserName
1      Bob
2      Tim
3      Jim

table resources:
ResourceID ResourceDesc
1          Printer #1
2          Fax Machine
3          Bowling Ball Wax

table users_resources:
LinkID UserID ResourceID
1      1      1
2      1      2
3      3      1
4      3      3

SELECT ResourceID
FROM users_resources, users
WHERE users.UserName="Bob"

You should normalize your data. This will make it easier to query against. For example:

table users:
UserID UserName
1      Bob
2      Tim
3      Jim

table resources:
ResourceID ResourceDesc
1          Printer #1
2          Fax Machine
3          Bowling Ball Wax

table users_resources:
LinkID UserID ResourceID
1      1      1
2      1      2
3      3      1
4      3      3

SELECT ResourceID
FROM users_resources, users
WHERE users.UserName="Bob"
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文