2

我知道这样的问题已经存在:如何将参数传递给 sql 'in' 语句?

但答案对我没有帮助,所以我请求您的指导。

如何将字符串数组作为参数传递给 Npgsql 语句?假设声明是这样的:

字符串 [] 名称 = 新字符串 [] { "一", "二" };

Adapter.SelectCommand.CommandText("Select something.name from something (很多内部连接) where something_else.name in (:names) group by something.name with count(*)=2; ");

4

2 回答 2

2

尝试:

where something_else.name = any(:names)
于 2013-05-21T04:19:30.963 回答
0

我不熟悉 npgsql 的确切语法,但我可以告诉你如何进行。

从您的字符串数组names中创建一个看起来像“'one', 'two'”的字符串。确保你有单引号分隔它们。

然后,当您创建命令字符串时,不要使用变量替换。相反,只需在语句之间()之后连接您刚刚创建的字符串。in即直接将它们插入到字符串中。

于 2013-05-19T17:13:54.297 回答