使用变量附加字段参数

Posted

技术标签:

【中文标题】使用变量附加字段参数【英文标题】:Use variable to append field parameter 【发布时间】:2012-10-13 14:57:31 【问题描述】:

在这里交叉发布:

http://www.vbforums.com/showthread.php?696163-Use-variable-to-append-field-parameter&p=4264077#post4264077

我正在使用 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 语句的字段?

即,Iif(QA=[@somestring], [@sometstring2], [@somestring3])

【问题讨论】:

【参考方案1】:

这是来自 VBForums 的直接剪切和粘贴。它是一个社区 wiki,只打算从“没有答案”中删除这个问题。可酌情删除或修改。


发件人:http://www.vbforums.com/showthread.php?696163-Use-variable-to-append-field-parameter&p=4264077#post4264077

作者:si_the_geek

这是不可能的,你只能用参数来设置Values,你 不能用它们做其他事情(例如字段/表名、函数、 等)。

如果您想更改查询的其他部分,您需要使用 其他方法(例如字符串构建)。在末尾的示例中 您的帖子,您应该将其添加到查询字符串中,并添加值 通过参数。

【讨论】:

以上是关于使用变量附加字段参数的主要内容,如果未能解决你的问题,请参考以下文章

如何将jquery克隆行附加到隐藏字段

将文本附加到包含文本的现有字段

如何将变量附加到 Graphql 上下文?

在 Swift 3 中附加一个函数范围之外的变量

Angular 2新表单,提交重定向到同一页面,表单字段附加在URL中作为查询参数,新路由器版本

在 Flex 上附加一个 textarea 文本字段