扩展MS Access中的编号范围

时间:2013-03-15 11:36:17

标签: ms-access

我有一系列需要扩展的数字范围。我把这些放入一个表格,分为开始,结束和范围大小(包括)和相关的范围ID

例如:

Start       End         Size ID
01234567890 01234567892 3    001
01234567900 01234567999 100  002
etc

我想创建一个数据库,允许扩展这些数字,并将范围ID应用于新表中的每个数字 例如

Number      ID
01234567890 001
01234567891 001
01234567892 001
01234567900 002
01234567901 002

这需要MS访问,因为我将提供给其他业务领域。有什么想法吗?

2 个答案:

答案 0 :(得分:1)

您将无法使用查询执行此操作;你需要VBA。

基本上,你的功能看起来像这样(伪代码):

Open a recordset of your first table
Loop through the records:
    For i = 0 to Size - 1:
        Insert into second table (Number + i, ID)
Close recordset

答案 1 :(得分:1)

您可以利用数字表格。这些非常容易创建,应该包含从0到最高数字的整数,让我们说1000.然后你可以说:

SELECT [Start]+[Number] AS Expanded, tbx.Size, tbx.ID
INTO Expanded
FROM Numbers, tbx
WHERE Numbers.Number<=[End]-[Start]

tbx是您现有的表格,Numbers是数字表格,Expanded是正在创建的表格。