通过vba / sql

时间:2016-12-01 12:28:51

标签: sql vba access jointable

我有一个表数据库,每个表包含两列,第一列是代码,第二列是数量。这些表是从每天创建的数据中提取的,如果代码在该日期由外部事件触发,则代码将具有特定日期的数据。对于例如2015-10-02日的表格如下:

Code  2015-10-02
1     321.23
2     3442.13
3     679.2
4     6201.4

因此每个表都有相同的第一列(代码),但代码每天都会有所不同。有些日子我们可能会触发不同于前一天的任何代码(第一次被触发),或者可能在前一天被触发,但数量不同。我想要创建的表格如下:

Code 2015-10-02 2015-10-03 2015-10-04 ....
1    321.23     0          0          
2    3442.13    0          10.42
3    679.2      41.2       0
4    294.12     41.31      1042.12
5    0          0          371.14
.
.

我知道我可以加入所有表格,但我想添加任何新代码,并假设前几天没有触发代码的每个代码为0。 有没有一种简单的方法可以通过VBA / SQL执行此操作?

由于

1 个答案:

答案 0 :(得分:3)

拿去。这不是数据库的工作方式。

你需要一个包含3列的表,如下所示:

+------+------------+---------+
| Code |    Date    | Amount  |
+------+------------+---------+
|    1 | 2015-10-02 |  321.23 |
|    2 | 2015-10-02 | 3442.13 |
|    3 | 2015-10-02 |   679.2 |
|    4 | 2015-10-02 |  6201.4 |
|    3 | 2015-10-03 |    41.2 |
+------+------------+---------+

代码+日期是主键。

然后,您可以使用交叉表查询获取代码与日期的矩阵(使用向导)。