タグ付けされた質問 「postgresql-9.3」

17
新しいPostgreSQL JSONデータ型内のフィールドを変更するにはどうすればよいですか?
postgresql 9.3では、JSONデータ型の特定のフィールドを選択できますが、UPDATEを使用してそれらをどのように変更しますか?この例はpostgresqlのドキュメントやオンラインのどこにもありません。私は明白なことを試しました: postgres=# create table test (data json); CREATE TABLE postgres=# insert into test (data) values ('{"a":1,"b":2}'); INSERT 0 1 postgres=# select data->'a' from test where data->>'b' = '2'; ?column? ---------- 1 (1 row) postgres=# update test set data->'a' = to_json(5) where data->>'b' = '2'; ERROR: syntax error at or …

3
新しいPostgreSQL JSONデータ型内のフィールドを使用してクエリを実行するにはどうすればよいですか?
PostgreSQL 9.2の新しいJSON関数のドキュメントや例を探しています。 具体的には、一連のJSONレコードがある場合: [ {name: "Toby", occupation: "Software Engineer"}, {name: "Zaphod", occupation: "Galactic President"} ] 名前でレコードを検索するSQLをどのように記述しますか? バニラSQLの場合: SELECT * from json_data WHERE "name" = "Toby" 公式の開発マニュアルはかなりまばらです: http://www.postgresql.org/docs/devel/static/datatype-json.html http://www.postgresql.org/docs/devel/static/functions-json.html アップデートI PostgreSQL 9.2で現在可能なことを詳しく説明した要点をまとめました。一部のカスタム関数を使用すると、次のようなことが可能になります。 SELECT id, json_string(data,'name') FROM things WHERE json_string(data,'name') LIKE 'G%'; アップデートII JSON関数を独自のプロジェクトに移動しました。 PostSQL -PostgreSQLとPL / v8を完全に素晴らしいJSONドキュメントストアに変換するための一連の関数

10
dockerコンテナーがローカル/ホストのpostgresデータベースに接続することを許可する
私は最近DockerとQGISをいじって、このチュートリアルの指示に従ってコンテナをインストールしました。 GISデータがすべて含まれているlocalhost postgresデータベースに接続できませんが、すべてうまくいきます。これは、私のpostgresデータベースがリモート接続を受け入れるように構成されておらず、postgres confファイルを編集して、この記事の手順を使用してリモート接続を許可しているためです。 DockerでQGISを実行しているデータベースに接続しようとすると、まだエラーメッセージが表示されます:サーバーに接続できませんでした:Connection refused Is the server running on host "localhost" (::1) and accepting TCP/IP connections to port 5433? postgresサーバーが実行されており、pg_hba.confファイルを編集して、 IPアドレス(172.17.0.0/32)。私は以前にを使用してDockerコンテナーのIPアドレスを問い合わせましたdocker psが、IPアドレスは変更されましたが、これまでのところ常に172.17.0.xの範囲にありました このデータベースに接続できない理由はありますか?たぶん私が想像する非常にシンプルなもの! 私はUbuntu 14.04を実行しています。Postgres 9.3

4
Postgres JSON配列に文字列が含まれているかどうかを確認する
ウサギに関する情報を保存するテーブルがあります。次のようになります。 create table rabbits (rabbit_id bigserial primary key, info json not null); insert into rabbits (info) values ('{"name":"Henry", "food":["lettuce","carrots"]}'), ('{"name":"Herald","food":["carrots","zucchini"]}'), ('{"name":"Helen", "food":["lettuce","cheese"]}'); にんじんが好きなうさぎをどうやって見つけたらいいの?私はこれを思いつきました: select info->>'name' from rabbits where exists ( select 1 from json_array_elements(info->'food') as food where food::text = '"carrots"' ); そのクエリは好きではありません。それは混乱です。 フルタイムのうさぎ飼いとして、データベーススキーマを変更する時間はありません。うさぎにちゃんとした餌をあげたいだけです。そのクエリを行うためのより読みやすい方法はありますか?

1
Postgres 9.3でjsonフィールドにインデックスを作成する方法
PostgreSQL 9.3 Beta 2(?)では、JSONフィールドにインデックスを作成するにはどうすればよいですか?使用した->演算子を使用して試してみましhstoreたが、次のエラーが発生しました: CREATE TABLE publishers(id INT, info JSON); CREATE INDEX ON publishers((info->'name')); エラー:データ型jsonにはアクセスメソッド "btree"のデフォルト演算子クラスがありませんヒント:インデックスの演算子クラスを指定するか、データ型のデフォルト演算子クラスを定義する必要があります。


17
PostgreSQLの隠された機能[クローズ]
クローズ。この質問はもっと焦点を合わせる必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てるようにします。 6年前に閉鎖されました。 この質問を改善する これがまだ投稿されていないことに驚いています。Postgresで知っている興味深いトリックはありますか?あいまいな構成オプションとスケーリング/パフォーマンスのトリックは特に歓迎されます。 対応するMySQLスレッドの9つのコメントを打ち負かすことができると確信しています:)
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.