问题标签 [postgresql-json]
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-json - PostgreSQL 函数 ON INSERT,将 JSON 值插入另一个表
我正在尝试在 PostgreSQL 中编写一个函数,该函数在插入 Cloudant 文档时通过侦听 Cloudant 来接收记录(我想让它成为一个 lambda,但现在它是一个节点进程)。
我正在获取 Cloudant id 和完整文档并将其插入到case_raw
表中,其中包含以下列:char(32)id
和 json type raw_json
。
从 Cloudant 到 Postgres 的努力是为了让我可以对来自边缘设备的 JSON 形式的数据进行复杂的连接等。
这是 Cloudant 文档的示例,我id
在 id 列中使用了相同的示例,它将被插入到raw_json
.
现在,我想创建一个触发器,为每一行调用一个函数ON INSERT
。
但是,我马上就要挂断电话了。我已经尝试了所有我能想到的方法,包括:WITH、嵌套 SELECT、to_json、强制转换 ::json,我敢打赌这很简单,但为什么我不能(似乎)不使用 JSON 运算符?
例如,我可以直接查询记录并从该记录中获取我想要的数据(以两种不同的方式获得相同的东西):
但是,对于我的生活,我无法进入 JSON。我已经阅读了至少 20 篇文章、PG 文档、PG 教程,但没有找到任何可以推动我前进的东西。非常感谢任何见解。在这里,我大大减少了使用with
等的尝试。PGAdmin 在->'name'
.
json - 如何合并多个 PostgreSQL JSON 数组,这些数组是另一个 JSON 数组更新其所有元素的结果?
给定以下两个表列jsonb
类型:
股息实际
股息预测
我想合并来自and的两个dividends
数组,但在合并它们之前,我想在每个对象上添加一个额外的字段 ()。dividend_actual
dividend_forecast
forecast
我确实尝试了以下方法:
上面的查询给了我以下结果:
但我需要的是以下输出:
postgresql - 从 Flask-Sql Alchemy 将 JSON 插入 postgresql
我想从烧瓶中将 JSON 类型的数据插入 PostgreSQL 数据库
例如: {"a":[1,2,3] , "b":[1,2,3]}
此类数据的一个示例是 Phone.no 和 Childrens,一个人可以有多个 ph.no 和 Childrens
在烧瓶视图中
在 HTTP post 方法中
如何将此类数据从烧瓶插入到 postgresql 中。
如果有人可以帮助我解决我的问题。
提前致谢
postgresql - PostgreSQL 创建物化视图,根据字段和表列将 JSON 数组中的对象汇总到特定列中
给定下表:
我想创建一个包含以下结构的物化视图。这些列应从零开始,并根据位置的内容相加。
Locations 将始终是一个 JSON 数组,具有以下结构。阵列中可能存在多个位置。每个用户可能存在多个条目。
鉴于上面的插入。物化视图应具有以下行:
java - 将 jsonArrayAgg 合并为 jOOQ 中的空数组
coalesce
新的 jOOQ 3.14 SQL/JSON 支持版本(在 PostgreSQL 中)中的等价物是什么?
不幸的是,以下失败并出现错误“COALESCE 类型 json 和 uuid[] 无法匹配”。
postgresql - Postgres jsonb_insert 数组
我正在尝试构建一个查询,该查询返回一组客户购物车及其所有物品,例如
表:
购物车:id
,customer_id
项目:cart_id
,,,price
_brand
所需的 JSON 结果示例:
失败的 SQL 查询(可在此处测试:http ://sqlfiddle.com/#!17/0ef54/1 ):
怎么能做到这一点?
postgresql - 用逗号分隔 postgreSQL 中的 jsonb 元素的连接
我想设计一个查询,我可以在其中以受控方式将两个 jsonb 与 postgreSQL 中未知数量/组的元素组合在一起。jsonb 运算符||
几乎完全符合我的目的,但是对于其中一个 jsonb 元素,我想用逗号连接和分隔这两个值,而不是让第二个 jsonb 的值覆盖第一个值。例如:
我当前的查询如下:
这导致 jsonb 元素col3_jsonb
的值 special 设置为separated
而不是 desired comma,separated
。我知道这是按照文档说明工作的连接运算符,但我不确定如何以不同的方式处理 jsonb 的一个元素,而不是尝试WITH..
在查询中的其他地方使用子句提取特殊值。任何见解或提示将不胜感激!
postgresql - 如何动态构造 sql/json 路径字符串
我正在尝试json/sql path
在过程中动态构建查询。
在上面我想要动态timezone
构建auck
。
到目前为止,我有以下
由于需要用引号括起来并转义正则表达式,它看起来不像是最优雅的代码。
直接字符串匹配看起来像这样
我希望有更好更安全的方法来做到这一点。
我正在尝试更新一些以类似方式工作的代码,而不使用我在下面截取的 json/sql。
postgresql - 如何在没有 JSON 处理函数的情况下在 WHERE 中编写 jsonb
这是我的query
,它有效。我将字典列表存储在我的jsonb
专栏中。
有没有办法在没有jsonb_path_exists()
功能的情况下写这个?
此外,JSON 处理函数是否使用索引?
我想简化查询的可读性/外观,因为它太长了。并且好奇我是否可以通过不使用 JSON 处理函数来获得任何性能改进。
我试图用它替换它@?
但失败了。这就是我使用的(引自 PostgreSQL):
jsonb@? jsonpath → 布尔值
JSON 路径是否返回指定 JSON 值的任何项目?
'{"a":[1,2,3,4,5]}'::jsonb @? '$.a[*] ?(@ > 2)' → t
很感谢任何形式的帮助。
postgresql - 如何在 JSONB 字段中的数组内索引对象?
我想要索引index
的JSONB
字段。GIN
在这个领域内,我有一个array
of objects
。确切地说,这就是它的外观(object
用三个点缩短第二个):
这就是我在WHERE
子句中过滤此表的方式:
这是我试过但没有用的索引:
解释分析:
我想table
按tags
、shifts
、periods
和过滤我的durations
。我有200,000 rows
。table
我怎么能index
这样field
?
我正在使用最新版本 - PostgreSQL 13
.