1

这是一场噩梦。

我在 MS Access 2007 中创建了这个交叉表查询;该查询在单独运行时完美运行,但是当我将查询添加到其他表时;示例:当我将查询加入到属于其他查询的其他表时,我收到此错误:

Ms Access does not Recognized MEMBER_ID as a Valid filed or expression.

我到处搜索,但找不到任何专门针对我的问题或场景的东西。

如果我单独运行查询,它可以工作。

这是代码:

TRANSFORM First(MEMBER_PHONE.PHONE_NBR) AS FirstOfPhone_NBR
SELECT MEMBER_PHONE.[MEMBER_ID]
FROM MEMBER_PHONE
WHERE (((MEMBER_PHONE.PHONE_TYPE) In ("CELL","HOME","WORK")))
GROUP BY MEMBER_PHONE.[MEMBER_ID]
PIVOT MEMBER_PHONE.[PHONE_TYPE];

我怎样才能解决这个问题?

谢谢大家!

4

1 回答 1

1

我认为如果您对交叉表查询采取另一种方法,这可能会起作用。如果您不使用 Access 中的向导,并在标准 (Access) SQL 中构建查询,它看起来像这样

SELECT 
    MEMBER_ID,
    FIRST(IIF(MEMBER_PHONE.PHONE_TYPE = "CELL",MEMBER_PHONE.PHONE_NBR,"")) As [CELL],
    FIRST(IIF(MEMBER_PHONE.PHONE_TYPE = "HOME",MEMBER_PHONE.PHONE_NBR,"")) As [HOME],
    FIRST(IIF(MEMBER_PHONE.PHONE_TYPE = "WORK",MEMBER_PHONE.PHONE_NBR,"")) As [WORK]
FROM
    MEMBER_PHONE
WHERE 
    MEMBER_PHONE.PHONE_TYPE In ("CELL","HOME","WORK") 
GROUP BY
    MEMBER_ID

然后,您应该能够链接到 MEMBER_ID 上的其他表/查询。

于 2012-05-29T17:38:53.150 回答