我正在尝试测试jsonPostgreSQL 9.3中的类型。
我在一个json名为data的表中调用了一列reports。JSON看起来像这样:
{
"objects": [
{"src":"foo.png"},
{"src":"bar.png"}
],
"background":"background.png"
}
我想在表中查询与'objects'数组中'src'值匹配的所有报告。例如,是否可以在数据库中查询匹配的所有报告'src' = 'foo.png'?我成功写了一个可以匹配的查询"background":
SELECT data AS data FROM reports where data->>'background' = 'background.png'
但由于"objects"有一系列的价值观,我似乎无法写出有用的东西。是否可以在数据库中查询匹配的所有报告'src' = 'foo.png'?我查看了这些来源,但仍然无法得到它:
http://www.postgresql.org/docs/9.3/static/functions-json.html
如何使用新的PostgreSQL JSON数据类型中的字段进行查询?
http://michael.otacoo.com/postgresql-2/postgres-9-3-feature-highlight-json-operators/
我也尝试过这样的事情,但无济于事:
SELECT json_array_elements(data->'objects') AS data from reports
WHERE data->>'src' = 'foo.png';
我不是SQL专家,所以我不知道我做错了什么。
qq_遁去的一_1
相关分类