【发布时间】:2012-05-07 12:36:51
【问题描述】:
我已经被这个问题困扰了一段时间,但还不能解决。这里是:
我的 Acces 数据库中有一些表和一些查询。我有一个查询来选择一些字段并按它们的频率排序。这是为两张桌子完成的,给了我两个等级。看起来像这样(并且按 DESC 排序,因此频率较高的在顶部):
表 1 表 2 值 1 频率 1 值 2 频率 2Table2.Value2 是 Table1.Value1 的子集,所以我想匹配 Value2 和 Value1 加上在 Table2 上显示 Value2 位置(排名)的列,所以我可以比较它在 Table1 和 Table2 排名上的位置。所以我'会有类似的东西:
表3 值 1 频率 1 频率 2 位置表 2我已经搜索了如何返回字段的行号(无法让它工作),我可以将两个表放在一起并按值匹配,但无法得到我需要的结果。
我的SQL知识有限,根本不懂VB,请多多关照:) 提前致谢
编辑 示例:
表 1 表 2 姓名 频率 姓名 频率 玛丽 5 保罗 2 约翰福音 4 约翰福音 1 保罗 3我想要的输出:
表3 名称 频率 Frequency2 RankIn2 Mary 5 //没有出现在table2中,freq=null rankin2=null John 4 1 2 //table2 的第二行 Paul 3 2 1 //table2 的第一行【问题讨论】:
-
您是否有两个表格的示例以及您想要的结果。
-
什么决定了表3中的排名?
-
您没有在 Table1 中显示排名。您有一个按降序排列的频率。您希望 RankIn2 根据该值自动递增吗?
-
嗯,没有明确的排名,但降序创建一个。我认为它必须类似于找出 Table2 中 Name 的行号才能放入列中。我将编辑示例,也许它会更清楚。