Time Access 2007查询:将查询更改为包括列年,而不是包括本年和上一年的列

Time Access 2007查询:将查询更改为包括列年,而不是包括本年和上一年的列,time,Time,我正在access2007中编辑数据库。以前,数据库有列: “今年有保障的股票”和“去年有保障的股票”。例如 今年承保的股票:3 去年承保的股票:2 我已将表更改为“年”列。比如说, 年份:2012年,覆盖股票:2年 年份:2013年,覆盖股票:3年 我的问题是,在我进行查询之前:分析师数据。今年的覆盖范围内的股票,我如何将其更改为符合当前表的年份?如果我每年都需要查询,我需要在查询中设置多个列,还是使用多个年份条件设置同一列 我需要把它放在一张表格上,上面写着 去年承保的股票:2 今年承保的股

我正在
access2007
中编辑数据库。以前,数据库有
“今年有保障的股票”和
“去年有保障的股票”。例如

今年承保的股票:3

去年承保的股票:2

我已将
更改为“年”列。比如说,

年份:2012年,覆盖股票:2年

年份:2013年,覆盖股票:3年

我的问题是,在我进行查询之前:
分析师数据。今年的覆盖范围内的股票
,我如何将其更改为符合当前表的
年份
?如果我每年都需要查询,我需要在查询中设置
多个列
,还是使用
多个年份
条件设置同一列

我需要把它放在一张
表格上,上面写着

去年承保的股票:2

今年承保的股票:3

请告知

编辑: 再举一个例子

在同一个查询中,我需要知道上一年的第四季度排名和今年的第四季度排名

旧的
表格

Stocks_Under_Cover_Last_Year Stocks_Under_Cover_This_Year Rank_Previous_Year Rank_Current_Year
        2                                3                        32               31
Year Stocks_Under_Cover Rank
2012        2            31               
2013        3            30
新的
表格

Stocks_Under_Cover_Last_Year Stocks_Under_Cover_This_Year Rank_Previous_Year Rank_Current_Year
        2                                3                        32               31
Year Stocks_Under_Cover Rank
2012        2            31               
2013        3            30
但我需要新的查询来填写上一年排名的表格:。。。等等

相同的
格式
格式:

Stocks_Under_Cover_Last_Year Stocks_Under_Cover_This_Year Rank_Previous_Year Rank_Current_Year
        2                                3                        32               31

编辑2:所以我认为我的解决方案是在一个表单中使用多个查询。第一个查询将查询2012年,并将所选值放入表单中的字段中。第二个查询将查询2013年,并将所选值放入表单中的字段中。但我不知道如何从多个查询中生成表单。

首先,将实际的
字段值
用作
字段名
是一个糟糕的设计。因此,最好是将
字段名
更改为更合理的名称,并存储适当的值,即,您可以将其更改为更通用但更具描述性的字段名,如
YearStockCovered
,而不是
Year2012
Year2012
作为
字段名,该字段上的值改为
2012
2013

因此,您可以轻松地查询以下表格:

SELECT YearStockCovered, COUNT(*) as StockCount 
FROM StockTable
GROUP BY YearStockCovered

你可以考虑在这上面学习代码>标准化< /代码>(请看最下面的)。


这是实现更合理的
数据库设计的基础

我想我没有把它打清楚。我试图在这里使用规范化。这就是我需要实施的全部变革。我指的是带有2012年、2013年等值的年份列。在表格中,它表示前一年排名:30,但在表格中是2012年,30为值