问题标签 [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 - 在 PostgreSQL 中,如何选择具有范围之间任何元素的 jsonb 数组的行?
我有以下(简化的)结构:
理想情况下,我想查询如下内容:
我设法想出了一个解决方法:
之前定义了以下内容:
这可行,但有点hackish,看起来效率不高。有没有更好的办法 ?
postgresql - PostgreSQL 上的 CTE 和临时索引
我在 postgres 数据库上工作,我将混合使用关系表和 jsonb 表(可以被索引)。
我一直在使用大量 CTE 查询来插入或更新从临时表中选择的数据,例如:
好吧,我想知道是否可以在这种表中创建临时索引,如果可以,是否也可以在 jsonb 类型的字段中创建索引?(考虑到这个临时表)
regex - 在 PostgreSQL 中搜索 jsonb 数组
我正在尝试在 PostgreSQL 9.4 中搜索 JSONB 对象。我的问题类似于这个线程。
但是我的数据结构略有不同,这导致了我的问题。我的数据结构是这样的:
我想通过 msg(RegEx、LIKE、= 等)在该数组中搜索匹配的对象。更具体地说,我希望表中 JSONB 字段具有与我的请求匹配的“msg”对象的所有行。
下面显示了一个类似于我所拥有的结构:
这显示了尝试实现上述链接的答案,但不起作用(返回 0 行):
谁能解释如何搜索 JSONB 数组?在上面的示例中,我想在表中查找其“数据”JSONB 字段包含“msg”匹配某些对象的任何行(例如,LIKE '%est%')。
更新
此代码创建一个新类型(稍后需要):
然后,您可以使用它来使用 JSONB_POPULATE_RECORDSET 拆分列:
输出:
并加入约束:
输出:
所以剩下的部分问题是如何把它作为一个子句放在另一个查询中。
所以,如果上面代码的输出=x,我怎么问:
ruby-on-rails - 如何逃脱?(问号)运算符在 Rails 中查询 Postgresql JSONB 类型
我正在使用 Rails 4.2 和 Postgres 9.4 来尝试新的 JSONB 数据类型。我的数据库中的 JSONB 列之一包含一个数组,我希望能够查询该数组包含某个值的记录。我想出了如何使用新的 JSONB“问号”(“包含”)运算符来做到这一点,如此处所述: http ://www.postgresql.org/docs/9.4/static/functions-json.html
所以在原始 SQL 中,我可以让它像这个例子一样工作:
但是我看不到通过 ActiveRecord 在 Rails 中执行此查询的任何方法。我尝试使用“where”方法进行原始查询,如下所示:
但由于问号是用于替换参数的特殊字符,我得到这个错误:
ActiveRecord::PreparedStatementInvalid:绑定变量的数量错误(1 对 2):角色??
我想我需要一种方法来逃避“?” 字符,因为我希望它从字面上通过。我试过了 \?和 ??没有运气。任何帮助表示赞赏!
postgresql - 为什么我不能直接在 jsonb_array_elements 上查询?
我将数据作为 jsonb 存储在名为“数据”的列中:
我可以通过以下方式查询:
为什么我不能用“a”代替 jsonb_array_elements(...)?:
相反,我得到以下信息:
ruby-on-rails - 嵌套 JSON 的存储访问器
我有存储与组织相关的所有信息的模型“组织”。有一个名为“integrations”的 JSONB 类型字段,用于存储与组织拥有的所有外部服务集成相关的信息。
如何使用存储访问器访问存储在嵌套 JSON 中的信息,例如:
我知道我可以使用这样的商店访问器访问 mailchimp:
如何轻松访问 mailchimp 的 api_key?
postgresql - 如何选择“职业”?
我有以下内容:
我正在过滤对象'{“name”:“Bob”,“occupation”:“janitor”}'
如何返回 Bob 的职业(“看门人”)?
返回
寻找:
arrays - 在 PostgreSQL 9.2、9.3 和 9.4 中追加(推送)和删除 JSON 数组?
对于大于 9.5 的版本,请参阅此问题
我使用以下方法在 PostgreSQL 中创建了一个表:
现在我想要的是
add像append_to_json_array这样的东西接受实际的 jsondata,它是一个 json-array 和我必须添加到该 jsondata 数组的 newString,这个函数应该返回更新的 json-array。
/li>从 json 数据数组中删除一个值,一个用于删除该值的函数。
我试图搜索 postgreSQL 的文档,但在那里什么也没找到。
sql - Postgres 9.4 jsonb 数组作为表
我有一个 json 数组,其中包含大约 1000 个结构元素“oid:aaa,instance:bbb,value:ccc”。
oid
并且instance
每个 json 数组都是唯一的。如果我可以选择更改结构,我会将格式更改为key:value:
但是,如果我需要保留旧结构
oid
从数组中获取特定信息的最快方法是什么?获取具有 3 列 和 的表的最快方法
oid
是instance
什么value
?或者甚至更好的是使用 oid+instance 作为列标题的数据透视表。
对于 2. 我尝试了以下方法,但在一张大桌子上速度很慢:
postgresql - Postgresql:使用 jsonb 字段在时间范围之间查询
我有一个包含两个字段的表:
在数据中,我有一个 Datetime 字段的记录,该字段存储为 UNIX 时间戳:
我正在尝试在范围之间进行查询:
信息
我做错了什么,请云有人帮助我吗?谢谢。