需要在MS Access(2010)中创建SQL语句来计算一个范围内的多个记录

需要在MS Access(2010)中创建SQL语句来计算一个范围内的多个记录,sql,vba,ms-access-2010,Sql,Vba,Ms Access 2010,我在MS access中有两个表。需要创建一个表来查找表1中的范围,并统计表2中该范围内的记录 表1 FROM TO 00100000 00799999 00800000 00899999 00900000 01599999 01600000 01899999 表2 Acct 00103614 00103615 00103624 00103626 00104001 00104002 00104003 00104004 00104302 00104400 0

我在MS access中有两个表。需要创建一个表来查找表1中的范围,并统计表2中该范围内的记录

表1

FROM        TO
00100000    00799999
00800000    00899999
00900000    01599999
01600000    01899999
表2

Acct
00103614
00103615
00103624
00103626
00104001
00104002
00104003
00104004
00104302
00104400
00104401
00104404
00104406
00104407
01622345
01622347
01622353
01622357
01622359
01622362
01622365
01622366
01622368
期望输出:

FROM        TO          Count
00100000    00799999    50
00800000    00899999    10
00900000    01599999     0
01600000    01899999    42
谢谢
弗兰克

我会这样做:

select count(*) as count, table1.tfrom, table1.to
from table2, table1
where table2.acct between table1.tfrom and table1.to
group by table1.tfrom, table1.to;
请避免在表/列名中使用诸如from和to之类的SQL单词使用相关子查询:

select *, (select count(*) 
           from table2 t2 
           where t2.acct >= t1.from and 
                 t2.acct <= t1.to
          ) as Count
from table1 t1;

我尝试了这个方法,在查询表达式“t1.acct-between-t1.from,t1.to”中出现了一个语法错误逗号。已修复:在结尾和中间子句中添加了分号