問題タブ [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.

0 投票する
2 に答える
44616 参照

postgresql - JSONB フィールド内のオブジェクトの Postgresql クエリ配列

私は、レシーバーと呼ばれるjsonbフィールドを持つpostgresql 9.4データベースにテーブルを持っています。行の例:

id の値のリストがあり、jsonb フィールドの配列内で、そのリストの値のいずれかを持つオブジェクトを含む行を選択したいと考えています。

それは可能ですか?これを高速化するために作成できる GIN インデックスはありますか?

0 投票する
0 に答える
534 参照

indexing - ORDER BYで使用されるJSONBのネストされたフィールドを適切にインデックス化する方法は?

私は現在、新しい JSONB タイプとそれをインデックス化する適切な方法を学んでいます。次のような JSON を格納する jsonbdetails列があります。

price->amount私のアプリは、キーごとに選択クエリを実行します... order by details->'price'->'amount' desc nulls lastorder byPostgreSQL 9.4 がインデックスを活用するには、フィールドとまったく同じように作成する必要があるという私の理解は正しいですか? 意味:

どういうわけか、Explain Analyst を実行したときに、このインデックスが使用されていません。

0 投票する
1 に答える
952 参照

postgresql - ツリー構造でJSONBフィールドをマージするには?

ツリー構造を格納する Postgres のテーブルがあります。各ノードにはjsonbフィールドがあります: params_diff:

必要なのは、親チェーン全体からすべてをマージした結果を含むid追加の生成フィールドを使用してノードを選択することです。paramsparams_diff

0 投票する
1 に答える
1196 参照

json - jsonb 列の指定されたキーと値のペアで行をフィルター処理します

Postgres 9.4 に次のテーブルがあります

記録付き:

ですべてのレコードを選択する方法はexamen ='aesc'? 演算子->>orを使ってみました@。同じ方法でいくつかのフィールドを選択する方法は? JSON列で最初の「itemX」を維持する必要があります。

0 投票する
1 に答える
1742 参照

ruby-on-rails - Rails 4.2とPostgresql 9.4でjsonbフィールドの平均値を計算するには?

次のような複数のフィールドの値を格納する jsonb 列があります。

レコードのコレクションから平均 "a" 値を取得する必要があります。

jsonb 列ではない場合は、次のようにかなり単純です。

しかし、今必要なのは次のようなものです。

また

これを行う最も効率的な方法は何ですか?

0 投票する
2 に答える
15641 参照

postgresql - PostgreSQL - jsonb_each

Postgres で jsonb をいじり始めたところですが、比較的新しい概念であるため、オンラインで見つけるのが難しい例を見つけています。

以下のjsonをjsonbとして保存し、それを使用してクエリをテストしています。

offer_currencies 配列にアクセスできます

"{"value": 1220.42, "currency_code": "EUR"}" の結果が得られるため、以下のクエリを実行すると取得されます (" を ' に変更する必要があります)。

上記の理論を使用して、このクエリを作成しました

しかし、これはcsvを1列に出力します

0 投票する
1 に答える
2044 参照

postgresql - PostgreSQLを使用してJSONBに変数を入れる方法は?

私は PostgreSQL で JSONB を使用したインデックス作成の例を行っており、以下のようにランダムな uuid を JSON の一部に追加したいと考えています。ただし、構文を正しく取得することはできません。最も近いのは です"{"lookup_id": " || uuid || "}"

私のコードは次のとおりです。

0 投票する
2 に答える
9127 参照

arrays - JSONB は PostgreSQL 配列を役に立たなくしますか?

オブジェクト (投稿など) に「タグ」を保存するとします。リリース 9.4 では、主に 3 つの選択肢があります。

  • タグとしてのテキスト[]
  • jsonb としてのタグ
  • タグをテキストとして (そして、JSON 文字列をテキストとして保存します)

多くの場合、3 番目は「タグ」値に対する条件付きクエリを許可しないため、問題外です。私の現在の開発では、そのようなクエリは必要ありません。タグは、投稿をフィルタリングするためではなく、投稿リストに表示されるためだけに存在します。

したがって、選択は主にtext[]との間jsonbです。どちらも照会できます。
何を使いますか?なぜ?

0 投票する
2 に答える
5478 参照

sql - 配列内のネストされたオブジェクトを使用した jsonb クエリ

という名前の列teamsを含むテーブルで PostgreSQL 9.4 を使用しています。Playersを持つすべてのチームと、そのプレーヤーの配列を取得できるクエリを探しています。jsonbjson347

テーブルには、次のjsonデータを含む 2 つの行が含まれています。

最初の行:

2 行目:

必要なチームのリストを取得するには、どのようなクエリを作成する必要がありますか? メンバー プレーヤーから配列を作成して比較するクエリを試しましたjsonb_array_elements(json -> 'members' -> 'players')->'id'が、すべてではなく、比較されたプレーヤー ID のいずれかがチームで利用可能であるという結果しか得られませんでした。