用于在Access 2007中向查询添加表达式的正确语法(

时间:2012-08-13 19:44:47

标签: sql ms-access-2007

我偶然发现了How Do I Sequentially Number Records in an Access Query 为了按照stackoverflow question我发布的那个{{3}}做我想要做的事情(我从来没有做过我以后做的事情)但每次我尝试将AS计数器添加到查询中我得到

The expression you entered contains invalid syntax
You may have entered an operand without an operator

使用以下sql:

SELECT Maintable.NumBR, Maintable.*, [Ehow] AS Expr1
FROM Maintable
WHERE (((Maintable.[NumBR])="" 
  Or (Maintable.[NumBR]) Like "3101" 
  Or (Maintable.[NumBR]) Like "3541" 
  Or (Maintable.[NumBR]) Like "4381" 
  Or (Maintable.[NumBR]) Like "AS3281" 
  Or (Maintable.[NumBR]) Like "4260" 
  Or (Maintable.[NumBR]) Like "4315" 
  Or (Maintable.[NumBR]) Like "4330" 
  Or (Maintable.[NumBR]) Like "4382" 
  Or (Maintable.[NumBR]) Like "9410" 
  Or (Maintable.[NumBR]) Like "9570" 
  Or (Maintable.[NumBR]) Like "AS3710" 
  Or (Maintable.[NumBR]) Like "AS4450" 
  Or (Maintable.[NumBR]) Like "K400" 
  Or (Maintable.[NumBR]) Like "3100" 
  Or (Maintable.[NumBR]) Like "3130" 
  Or (Maintable.[NumBR]) Like "3280" 
  Or (Maintable.[NumBR]) Like "3495" 
  Or (Maintable.[NumBR]) Like "3540" 
  Or (Maintable.[NumBR]) Like "3610" 
  Or (Maintable.[NumBR]) Like "3700" 
  Or (Maintable.[NumBR]) Like "4110" 
  Or (Maintable.[NumBR]) Like "4200")

AND (([Ehow])=DCount("[NumBR]","[Maintable]"," [NumBR] <= " & [NumBR])));

编辑上一次stackoverflow问题中提出的问题回答了这个问题。

1 个答案:

答案 0 :(得分:1)

查询中不需要 AS Counter 短语。在链接的示例中,将其添加到 SELECT 语句以对列进行别名;在您的示例中,您正在使用 WHERE 子句,因此 AS 短语不会执行任何操作(并且实际上无效)。