【发布时间】:2017-08-17 16:00:18
【问题描述】:
我是 access sql 的新手,我在尝试格式化数据以从一个表插入另一个表时遇到问题。
我有一个看起来像这样的表,其中带有“2017”的值对应于它们周围的代码,例如
code
values
* code
因为这是一个非常古老的系统的输出。
+--------------+------------+----------+------+
| Code | Date | Time | Qt |
+--------------+------------+----------+------+
| D4D5F44G8 | | | |
| 2017 | 15.08.2017 | 22:30:44 | 792 |
| 2017 | 15.08.2017 | 11:17:03 | 48 |
| 2017 | 15.08.2017 | 04:50:52 | 288 |
| * D4D5F44G8 | | | |
| F45D7W8E9F | | | |
| 2017 | 15.08.2017 | 04:50:54 | 792 |
| * F45D7W8E9F | | | |
+--------------+------------+----------+------+
我正在尝试将这样的代码作为代码的唯一值插入到另一个表中:
+--------------+------------+----------+------+
| Code | Date | Time | Qt |
+--------------+------------+----------+------+
| D4D5F44G8 | 15.08.2017 | 22:30:44 | 792 |
| D4D5F44G8 | 15.08.2017 | 11:17:03 | 48 |
| D4D5F44G8 | 15.08.2017 | 04:50:52 | 288 |
| F45D7W8E9F | 15.08.2017 | 04:50:54 | 792 |
+--------------+------------+----------+------+
但我找不到像交叉应用或获取在普通 sql 中几乎相同的值之间的行之类的东西,更不用说访问 sql。
这是否可以通过使用 Access SQL 来实现,或者我应该尝试通过一系列函数使用 VBA Access 来做到这一点?即使在 SQL Server 中执行此操作的帮助也会有所帮助,但最好在 Access 中执行此操作。
任何类型的建议都可以提供帮助,我已经被困了很长一段时间了。
再一次,英语不是我的第一语言,所以感谢您对语法的耐心等待。 提前致谢。
【问题讨论】:
-
您的前提有问题。您甚至使用哪一列来定义输入表中的排序?在内部,Access 对相邻代码一无所知。
-
该表本身没有键值,它是由系统在进程以代码启动时创建的,然后根据计算它们的时间添加 Qt,当进程停止时,它会关闭它"" 和代码,然后开始另一个。我想说的是,除了获取“code”的值并将它们与“*code”匹配,并以“”作为更接近之外,该表没有任何排序方式跨度>
-
还有时间戳吗?
-
没有时间戳,是从.txt导入来访问的。
-
然后更改您的导入过程,以便包含可以将代码与其真实记录相关联的信息。