Select语句 - Level子句包括拼写错误或缺少错误的保留字或参数

时间:2014-02-11 09:35:16

标签: vba ms-access

我是VBA的新手。我想根据关卡和一些分组选项选择数据。

我在下面写了我的查询,用于从表中检索数据,唯一批次ID,框,一些聚合函数,最后是基于级别的条件。

sSQL = "SELECT DISTINCT Batch,Start_date,Box,min(Start_Time),Cutoff_Date,Cutoff_Time,sum(Items),sum(Keystrokes) from sched GROUP BY Batch,Start_date,Cutoff_Date,Cutoff_Time,Box where Level in '" & Learner & "'"

但是我收到错误“Level子句包含错误拼写或缺失错误的保留字或参数”

我还希望基于单列级别检索数据并显示为三个列,如初学者,技能,专家..

任何人都可以回答我的问题。谢谢。

1 个答案:

答案 0 :(得分:0)

这些阶段及其在sql中的顺序如下所示(参考:here

  1. FROM
  2. ON
  3. OUTER
  4. WHERE
  5. GROUP BY
  6. CUBE | ROLLUP
  7. HAVING
  8. 选择
  9. DISTINCT
  10. ORDER BY
  11. TOP
  12. 您在WHERE之后放置了GROUP BY,这是错误的。

    您的查询应该是:

    sSQL = "SELECT 
    DISTINCT Batch,Start_date,Box,min(Start_Time),Cutoff_Date,Cutoff_Time,sum(Items),sum(Keystrokes) 
    from sched 
    where Level = '" & Learner & "'
    GROUP BY Batch,Start_date,Cutoff_Date,Cutoff_Time,Box"
    

    同时将Level IN替换为Level =