Access 2013:为什么我会收到此语法错误?

时间:2014-03-07 07:30:54

标签: sql ms-access syntax-error ms-access-2013

在我添加案例陈述之前,我没有收到错误。如果H1或H2手机字段为空或无效,我需要添加案例陈述以提供家庭电话号码作为备份(最好的方式我知道如何做,作为新手)。出于某种原因,我在查询表达式中收到语法错误(缺少运算符)。它注意到两个案例陈述的错误。据我所知,他们写得正确......谁知道怎么了?感谢。

SELECT [H1 Last Name] & ", " & [H1 First Name] as [Full Name],[H1 E-Mail]
CASE
     WHEN [H1 Cell Phone] IS NULL
     THEN [Home Phone]
     ELSE [H1 Cell Phone] END as [Phone]

FROM NameLookup 
WHERE (((NameLookup.[H1 Last Name]) NOT LIKE '%SPEC%') OR ((NameLookup.[H1 Last Name]) NOT LIKE '%MODEL%')) AND ((NameLookup.[H1 Last Name]) IS NOT NULL)

UNION

SELECT [H2 Last Name] & ", " & [H2 First Name] as [Full Name],[H2 E-Mail]
CASE
     WHEN [H2 Cell Phone] IS NULL
     THEN [Home Phone]
     ELSE [H2 Cell Phone] END as [Phone]

FROM NameLookup 
WHERE (((NameLookup.[H1 Last Name]) NOT LIKE '%SPEC%') OR ((NameLookup.[H1 Last Name]) NOT LIKE '%MODEL%')) AND ((NameLookup.[H1 Last Name]) IS NOT NULL)


Order By 1;

1 个答案:

答案 0 :(得分:2)

您是否在MS Access ACE中使用它?案例不可用,请使用IIF(argument, true value, false value)

SELECT [H1 Last Name] & ", " & [H1 First Name] as [Full Name],[H1 E-Mail],
IIF ( [H1 Cell Phone] IS NULL, [Home Phone], [H1 Cell Phone] ) AS Phone
FROM NameLookup 

访问SQL函数:http://www.techonthenet.com/access/functions/