我在将特定类型的参数从 Excel 单元格值传递到 ODBC 查询时遇到了一些问题。它是一个 AS400 服务器上的 DB2 数据库,我使用的是 IBM 的 iSeries Access ODBC 驱动程序。
这是带有硬编码值的查询:
SELECT STKB.BXPART, STKB.BXSTOK, STKB.BXQTOH, STKB.BXUNIT
FROM CMSDAT.STKB STKB
WHERE (STKB.BXPART In ('BAG024','BAG709'))
和期望的结果:
我想做的是将列表从 Excel 值传递给参数。查询修改如下:
SELECT STKB.BXPART, STKB.BXSTOK, STKB.BXQTOH, STKB.BXUNIT
FROM CMSDAT.STKB STKB
WHERE (STKB.BXPART In (?))
如果我在单元格中放入一个值,查询将返回该值的结果。如果我尝试多个项目,则查询返回空。我在单元格 AA4 中尝试了以下值:
('BAG024','BAG709')
(BAG024,BAG709)
'BAG024','BAG709'
BAG024,BAG709
有没有人成功地将单元格值用于“in”参数?
谢谢!