查询存储为json的简单数组

时间:2015-05-19 08:53:14

标签: postgresql-json

如何检查行是否存在整数,这些整数存储在json列中,如此     [3,7,11,9] 因为没有在该列中具有名称的结构化json对象,所以我不能使用语法 where obj->>' something' = 3 。没有'

1 个答案:

答案 0 :(得分:0)

您可以获取行的字符串表示形式,例如将逗号分隔的元素显示为" 3,7,11,9和#34;然后使用indexOf方法在字符串中搜索给定元素,像myString.indexOf(" 7")。您也可以用逗号分割此字符串,获取元素数组。然后你可以使用Array.indexOf检查元素中是否存在元素。

举个例子:



var obj = [3, 7, 11, 9]
var strRepresentation = obj.toString();
var array = strRepresentation.split(',');

function elementExists(e)
{
   return e + " exists in the array? " + (array.indexOf(e.toString()) != -1).toString();
}

alert(elementExists(7)); //returns true
alert(elementExists(13)); //returns false