如何将整数数组传递到 IN 子句中?
我想将一个整数数组从 postgresql 函数的输入参数传递到 sql IN 子句中。
我可以将这样的数组转换成什么以及如何转换?
I want to pass an integer array from input parameters of my postgresql function into sql IN clause.
Into what and how I can convert such array?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我最近有同样的问题。
看这里:
http://postgresql.1045698.n5.nabble.com/Using-PL-pgSQL-text-argument-in-IN-INT-INT-clause-re-post-td3235644.html
希望有帮助。
这是一个示例函数:
I had same problem lately.
Look here:
http://postgresql.1045698.n5.nabble.com/Using-PL-pgSQL-text-argument-in-IN-INT-INT-clause-re-post-td3235644.html
Hope it helps.
Here is a sample function:
基本上你不能。您可以做的是传入一个逗号分隔的列表并在函数中将其分开。 这里有一些使用 SQL Server 的示例,但我确信它们可以被翻译。
除非 这个 (PostgreSQL) 就是你想要的谈论。
Basically you can't. What you can do is pass in a comma-delimited list and split it apart in your function. Here are some examples using SQL Server, but I'm sure they can be translated.
Unless this (PostgreSQL) is what you're talking about.
我通常使用隐式转换
select '{1,2,3,4,5}'::integer[]
i usually use implicit conversion
select '{1,2,3,4,5}' :: integer[]