【发布时间】:2016-12-27 22:22:14
【问题描述】:
我将一个字符串作为参数(通过 massjs)传递到我的查询中。字符串格式为:param = 'red, blue, green'。参数本身没有固定长度(',' 是分隔符),因为它是通过用户发送的内容填充的(但最多包含 10 个元素)。
如何在查询中将字符串分解为单独的字符串?
例如我正在尝试做的事情:
SELECT * FROM table
WHERE name IN (param);
我知道这行得通,但非常粗略:
SELECT * FROM table
WHERE name IN (split_part(param, ',', 1), split_part(param, ',', 2) .......)) -- keep going.
基本上我希望在 IN 括号内有 ('red', 'blue', 'green' ....)。有没有更好的方法来实现这一点?
【问题讨论】:
标签: sql postgresql split where-in massivejs