0

我有一个巨大的 excel 文件,其中包含超过一百万行和一堆列 (300),我已将其导入到 access 数据库中。我正在尝试对其运行内部联接查询,该查询与相对较小数据集中的数字字段匹配。如果可能,我想从庞大的数据集中捕获所有数据列。当我从庞大的数据集中仅选择一列时,我能够在大约 1/2 小时内运行查询。但是,当我从较大的数据集中选择所有列并将查询写入表时,它就永远不会停止。

一个考虑因素是较小数据集的连接字段是数字,而较大数据集的连接字段是文本。为了解决这个问题,我在更大的数据集上创建了一个查询,它使用“val”函数将文本字段转换为数字。有问题的文本字段已编入索引,但我想我应该将表本身转换为数字字段以匹配较小数据集的类型。也许这会使查找更有效率。

除此之外,我可以使用并且非常感谢一些关于让这个查询在合理的时间内运行的好策略的建议。

4

1 回答 1

1

Access 是一个关系数据库。如果您的结构尊重关系模型,它旨在高效工作。音量不是问题。

第 1 步:规范化您的数据。如果您不知道这意味着什么,Access 中有一个向导可以帮助您(数据库工具、分析表),或者搜索数据库规范化
步骤 2:索引连接字段
步骤 3:快速享受结果

您必须将连接的双方都放在同一类型中。如果不这样做,索引和优化将无法运行。

于 2012-08-15T19:34:12.893 回答