0

我在 MS Access 上运行 SQL 查询。

查询如下所示:

TRANSFORM MIN(X_VALUE*MULTIPLE & ' ' & Y_VALUE)
SELECT A.ID
FROM ((MY_TABLE_A A
       INNER JOIN MY_TABLE_B B ON B.ID = A.ID)
      INNER JOIN MY_TABLE_C C ON C.FOO1_ID = A.FOO1_ID)
LEFT JOIN MY_TABLE_D D ON A.FOO2_ID = D.FOO2_ID 

其中 A.NUM ='FOO' AND A.FOO_ID<>0 AND FOO3=1

GROUP BY A.ID PIVOT X_NAME IN('BLAH1', 'BLAH2')

当针对本地 MDB 文件运行它时,它可以工作。当针对 Linked MDB(表链接到远程 Oracle DB)运行它时,我得到了

错误 [42000] [Microsoft][ODBC Microsoft Access 驱动程序] Microsoft Access 数据库引擎无法执行 SQL 语句,因为它包含具有无效数据类型的字段。

我用谷歌搜索了它,找不到任何有用的东西。

知道我能做什么吗?谢谢。

4

1 回答 1

1

查询中唯一甚至模糊地似乎会导致数据类型问题的语句是转换语句中的混合类型。也许以下方法会起作用:

TRANSFORM MIN(CSTR(X_VALUE*MULTIPLE) & ' ' & CSTR(Y_VALUE))
于 2014-07-31T13:38:10.700 回答