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

PostgreSQLは、Linux、UNIX、Windows、OS Xを含むすべての主要なプラットフォームで利用できるオープンソースのオブジェクトリレーショナルデータベース管理システム(ORDBMS)です。質問する場合は、Postgresの正確なバージョンをお知らせください。管理または高度な機能に関する質問は、dba.stackexchange.comに直接送信してください。


3
JSON型内の配列要素のクエリ
jsonPostgreSQL 9.3で型をテストしようとしています。という表にと呼ばれる列 がありjsonます。JSONは次のようになります。datareports { "objects": [ {"src":"foo.png"}, {"src":"bar.png"} ], "background":"background.png" } 'objects'配列の 'src'値に一致するすべてのレポートのテーブルをクエリしたいと思います。たとえば、一致するすべてのレポートについてDBにクエリを実行することはできます'src' = 'foo.png'か?に一致するクエリを正常に作成しました"background"。 SELECT data AS data FROM reports where data->>'background' = 'background.png' しかし、"objects"値の配列があるので、私はうまくいくものを書くことができないようです。一致するすべてのレポートについてDBをクエリすることはできます'src' = 'foo.png'か?私はこれらのソースを調べましたが、それでもまだ取得できません。 http://www.postgresql.org/docs/9.3/static/functions-json.html 新しいPostgreSQL JSONデータ型内のフィールドを使用してクエリするにはどうすればよいですか? http://michael.otacoo.com/postgresql-2/postgres-9-3-feature-highlight-json-operators/ 私もこのようなことを試しましたが、役に立ちませんでした: SELECT json_array_elements(data->'objects') AS data from reports WHERE data->>'src' = 'foo.png'; 私はSQLのエキスパートではないので、何が問題なのかわかりません。
118 sql  json  postgresql  jsonb  lateral 


7
PostgreSQLは正確に私に言って何を説明していますか?
MySQLの説明出力は非常に簡単です。PostgreSQLはもう少し複雑です。それを説明する優れたリソースも見つかりませんでした。 説明が正確に言っていることを説明できますか、または少なくとも私を良いリソースの方向に向けることができますか?
116 postgresql 

2
Postgresql:条件付きで一意の制約
テーブルの一部でのみ列に一意性を適用する制約を追加したいと思います。 ALTER TABLE stop ADD CONSTRAINT myc UNIQUE (col_a) WHERE (col_b is null); 上記のWHERE部分は希望的な考えです。 これを行う方法はありますか?それともリレーショナル図面に戻るべきですか?

8
PostgreSQLの存在しない場合、CREATE DATABASEをシミュレートしますか?
JDBCでは存在しないデータベースを作りたい。MySQLとは異なり、PostgreSQLはcreate if not exists構文をサポートしていません。これを達成するための最良の方法は何ですか? アプリケーションは、データベースが存在するかどうかを認識しません。それはチェックする必要があり、データベースが存在する場合はそれを使用する必要があります。したがって、目的のデータベースに接続することは理にかなっており、データベースが存在しないために接続が失敗した場合は、(デフォルトのpostgresデータベースに接続することによって)新しいデータベースを作成する必要があります。Postgresから返されたエラーコードを確認しましたが、同じ種類の関連コードは見つかりませんでした。 これを実現する別の方法は、postgresデータベースに接続し、目的のデータベースが存在するかどうかを確認し、それに応じてアクションを実行することです。2つ目は、作業するのが少し面倒です。 Postgresでこの機能を実現する方法はありますか?
115 sql  database  postgresql  jdbc  ddl 

3
pgAdminを使用してPostgresqlテーブルデータをエクスポートする
pgAdminバージョン1.14.3を使用しています。PostgreSQLデータベースのバージョンは9.1です。 テーブル作成用のすべてのDbスクリプトを取得しましたが、テーブル内のすべてのデータをエクスポートできません。dbスクリプト形式でデータをエクスポートするオプションが見つかりませんでした。


21
PSQLはサーバーに接続できませんでした:そのようなファイルまたはディレクトリはありません、5432エラー?
psqlVagrantマシンで実行しようとしていますが、次のエラーが発生します。 psql: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"? 注:Vagrant 1.9.2 Box:ubuntu / trusty64、https://atlas.hashicorp.com/ubuntu/boxes/trusty64 postgresをインストールして実行するために使用した編集コマンド: sudo apt-get update sudo apt-get install postgresql sudo su postgres psql -d postgres -U postgres

5
postgresqlの文字列リテラルとエスケープ文字
エスケープ文字をテーブルに挿入しようとすると、警告が表示されます。 例えば: create table EscapeTest (text varchar(50)); insert into EscapeTest (text) values ('This is the first part \n And this is the second'); 警告を生成します: WARNING: nonstandard use of escape in a string literal (PSQL 8.2を使用) 誰でもこれを回避する方法を知っていますか?



6
PostgreSQLで符号なし整数が使用できないのはなぜですか?
私はこの投稿に遭遇し(MySQLのtinyint、smallint、mediumint、bigint、intの違いは何ですか?)、PostgreSQLが符号なし整数をサポートしていないことに気付きました。 誰もがなぜそうなのかを説明するのを手伝ってくれる? ほとんどの場合、MySQLでは自動インクリメントの主キーとして符号なし整数を使用します。そのような設計では、データベースをMySQLからPostgreSQLに移植するときにこれをどのように克服できますか? ありがとう。

10
PostgreSQLで重複するレコードを削除する
PostgreSQL 8.3.8データベースにテーブルがあり、キー/制約がなく、まったく同じ値の複数の行があります。 すべての重複を削除して、各行のコピーを1つだけ保持したいと思います。 特に、「キー」という名前の列が1つあり、重複を識別するために使用できます(つまり、「キー」ごとに1つのエントリのみが存在する必要があります)。 これどうやってするの?(理想的には単一のSQLコマンドを使用)この場合、速度は問題になりません(数行しかない)。

8
PostgreSQL LIKEクエリのパフォーマンスの変化
LIKEデータベース内の特定のテーブルに対するクエリに関して、応答時間にかなり大きな変動が見られます。200〜400ミリ秒以内に結果が得られる場合がありますが(非常に許容範囲内)、結果が返されるまでに30秒ほどかかる場合もあります。 LIKEクエリは非常に多くのリソースを必要とすることを理解していますが、応答時間にこのような大きな違いが生じる理由を理解していません。owner1フィールドにbtreeインデックスを作成しましたが、LIKEクエリに役立つとは思いません。誰かアイデアはありますか? サンプルSQL: SELECT gid, owner1 FORM parcels WHERE owner1 ILIKE '%someones name%' LIMIT 10 私も試しました: SELECT gid, owner1 FROM parcels WHERE lower(owner1) LIKE lower('%someones name%') LIMIT 10 そして: SELECT gid, owner1 FROM parcels WHERE lower(owner1) LIKE lower('someones name%') LIMIT 10 同様の結果。 テーブルの行数:約95,000。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.