问题标签 [jsonb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
postgresql - 如何从 jsonb 返回一个对象数组?
我有下表:
使用以下数据:
请注意,除了“sales_tv”和“sales_radio”之外,还有其他键。对于下面的查询,我只需要关注“sales_tv”和“sales_radio”。
我正在尝试为以“sales_”开头的任何内容返回 Jim 的对象列表。在列表中的每个对象中,我只需要返回值和年份(忽略“位置”或任何其他键),例如:
我能够获得每个值,但没有年份或我想要的列表格式:
结果:
python-2.7 - 为什么我在 psycopg2 中收到“错误类型“jsonb”不存在”?
当我运行以下命令时:
我明白了
psycopg2 安装在 virtualenv 上,并pip show psycopg2
提供Version: 2.6.1
PostgreSQL 版本是 9.4.4。我可以使用psql
并手动创建一个jsonb
类型为列的表。当我通过 python2 和 psycopg2 运行它时导致错误的原因是什么?
我不确定这是否重要,但我刚刚从 PostgreSQL 9.3 更新到 9.4。我尝试用 pip 重新安装 psycopg2 但没有帮助。我试过几次重启 PostgreSQL 服务器。
编辑:
当我SELECT Version()
通过 psycopg2 时,它显示返回 PostgreSQL 版本 9.3。如何让 psycopg2 连接到 Postgres 9.4 服务器?
postgresql - 每个键的 PostgreSQL JSONB 查询类型
我有一定的表:
如何查询该表中每个键的类型,因此它会给出如下输出:
我只知道获取密钥和计数的方法,但不知道如何获取每个密钥的类型:
这会给出类似的东西:
java - 从 PostgreSQL 获取 JSON 数据时遇到问题
我有一个以 JSONB 数据类型作为列之一的数据库表。我的应用程序在 Struts2 中,它使用 struts2-json.jar 将请求和响应映射为 JSON。
我面临的问题是我希望将表列中的 JSON 数据作为 JSON 数组发送到响应中。但是我最终将数据作为哈希文字发送。
当方法返回 SUCCESS 时,有一个关联的 HashMap 用于将数据作为 JSON 返回。
我将列的名称作为键,并将该列的值作为 HashMap 中该键的值。
但是,当 struts2-json 库正在转换 JSON 键的值时,如下所示。
我希望发送的回复是
“sem_votes_allowed”、“uvp_even_id”和“sem_holdings”是表中数据类型为 JSONB 的列。
下面是填充 HashMap 的代码片段。
shareDataMap 是一个实例成员,有它的 getter 和 setter
这是 struts.xml 中的代码片段
如果有人可以向我展示实现此目的的解决方法,那将非常有帮助。
提前致谢。
postgresql - PostgreSQL 9.4 中的 jsonb 类型无法正确验证
我正在使用 PostgreSQL 9.4 数据库。在我的bo_lesson
表中,我有一个类型的metadata
字段jsonb
。
但是当我执行这个查询
该行已正确插入。
该jsonb
字段尚未对插入的内容进行任何验证。我读过它应该这样做。我错过了配置选项吗?
sql - 选择 jsonb 数组包含数组中任何字符串的行
到目前为止,这是我的 SQL:
如果该行同时具有BOTHhello
和world
search_tags
我想知道是否有一种方法可以包含具有 EITHER hello
ORworld
的行,当然还有同时具有两者的行。
提前感谢大家!
json - Postgres 9.4 按json数组的元素值选择
有一个 'accounts' 表,其中 'data'::jsonb 字段填充:
我尝试类似:
select * from accounts where data->'cars' @> '{"brand":"Toyota"}'
但它没有显示记录。错过了什么?
json - Postgres JSON 到 JSONB
我们有大量使用 Postgres 9.3 将 json 数据插入/更新到 JSON 列的 PLPGSQL 代码
我们希望随着时间的推移将代码转换为 JSONB 格式,并利用更好的索引和新的运算符。
有没有一种方法可以在不重写我们所有代码以使用新的 JSONB 格式的情况下做到这一点。
例如,我们有很多接受和返回 JSON 的函数,粗略的例子:-
我的理想是无需重写函数即可将 json 转换为 jsonb。我在插入之前尝试了一个触发函数来执行此操作,但这不起作用,因为 postgres 查询语法检查器首先到达那里:-
我怀疑我无能为力,将不得不重写所有代码(1000 行),但我想我会把它放在那里看看是否有一个聪明的想法可以让我在插入时进行 CAST /update 并为重写争取一些时间。
postgresql - 在 PostgreSQL 中搜索嵌套的 jsonb 数组
我有一个订单表,我将订单摘要存储在jsonb
列中
现在我想users
用他们的food->name
.
我尝试了以下方法,但这也给了我没有食物的用户foo。
我该怎么做这样的查询?
更新
我也有一个像这样的夏天有两种食物选择
比我得到的:
理想情况下我想得到
postgresql - Postgresql json 从数组包含的第二层中的值中选择
我有一个 jsonb 列“数据”,其中包含类似 json 的树,例如:
我希望能够使用根据类型从缩进的“书”json中选择一个值的查询来进行索引。所以所有的书名都是虚构的。
我能够使用 jsonb_array_elements 连接查询来做到这一点,但据我所知,这不会使用 GIN 索引进行优化。我的查询是