跨张贴在这里:使用可变附加字段参数
我使用ADO检索从MS Access到Excel中的数据,我想一个IIF语句添加到我的查询的SELECT部分。我的SQL字符串存储在一个文本文件中,并且通过ADO附加了任何参数。
我知道如何添加参数在WHERE子句中,甚至可以在SELECT语句这样的附加参数:
SELECT BA, Iif(QA=[@somestring],[@somestring2], [@somestring3])
FROM myData
WHERE BA = 'some person'
但是我想做到的是改造一个占位符[@somestring]为一个可变长度IIF语句,如:
SELECT BA, [@somestring]
而且占位符转化为我所用内置函数的字符串:
Iif(QA='Jon Doe', 'Jon', Iif(QA='Jane Doe', 'Jane', 'Nobody')).
现在,我得到的结果是我传递给填充整个字段的参数的文字字符串。因此,Iif语句是为每个记录逐字写出的,而不是由SQL进行评估。
正在尝试甚至做什么,或者SQL是否需要在初始命令中预定义Iif语句的Field?
即IIF(QA = [@ somestring],[@ sometstring2],[@ somestring3])