我在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' 和a.foo_id <> 0 和foo3= 1

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

运行此针对本地MDB文件时,它将工作。 运行此反对链接MDB(表链接到远程Oracle DB),我得到

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

我忘了它,找不到任何有用的东西。

任何想法我该怎么办? 谢谢。

有帮助吗?

解决方案

查询中的唯一语句甚至模糊似乎它会导致数据类型问题是转换语句中的混合类型。也许以下将有效:

TRANSFORM MIN(CSTR(X_VALUE*MULTIPLE) & ' ' & CSTR(Y_VALUE))
.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top