問題タブ [postgresql-8.1]

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 投票する
5 に答える
3251 参照

sql - 3 つの異なるテーブルにある一意の ID を検索する SQL クエリ

製品、色、およびサイズを制御する 3 つのテーブルがあります。製品には色とサイズがあってもなくてもかまいません。色にはサイズがある場合とない場合があります。

すべてのunique_idテーブルに存在する列はシリアル型 (オートインクリメント) であり、そのカウンターは 3 つのテーブルで共有され、基本的にそれらの間のグローバル ユニーク ID として機能します。

正常に動作しますが、に基づいていくつかのフィールドを選択する必要がある場合、クエリのパフォーマンスを向上させようとしていますunique_id

unique_id探しているのがどこにあるのかわからないので、UNION以下のように使用しています:

これを行うより良い方法はありますか?ご提案ありがとうございます。

編集1

@ErwinBrandstetter と @ErikE の回答に基づいて、以下のクエリを使用することにしました。主な理由は次のとおりです。

1)unique_idすべてのテーブルにインデックスがあるため、パフォーマンスが向上します

2) unique_idi を使用すると製品コードが見つかるため、別の単純な結合を使用して必要なすべての列を取得できます

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

postgresql-8.1 - 出力ファイルが最小の PostgreSQL バックアップ

ファイル システム バックアップとしてバックアップすると、732 GB を超える Postgresql データベースがあります。pg_dump を実行すると、585 GB まで下げることができます。pg_dump を PITR メソッドと組み合わせた場合、最小のバックアップ データ ファイル サイズで最適なバックアップが得られますか? 私の計画は、pg_start_backup、pg_dump、pg_stop_backup の順に実行することでした。ファイル システムのバックアップを実行するようドキュメントに記載されていることは知っていますが、より小さなバックアップ データ セットが必要です。次に、WAL ファイルをコピーして、夜間にバックアップします。

0 投票する
3 に答える
11575 参照

sql - PostgreSQLのORDERBY句でALIASを使用するにはどうすればよいですか?

私は次のクエリを持っています:

PostgreSQL 8.1.23で実行すると、次のエラーが発生します。

クエリに失敗しました:エラー:列"global_stock"が存在しません

誰かが私がそれを機能させるのを手伝ってくれる?最初に利用可能なアイテムが必要ですが、その後に利用できないアイテムが必要です。どうもありがとう!

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

postgresql - postgres の列への入力をサニタイズする

したがって、これはかなり単純なはずですが、ドキュメントではやや複雑に見えます。私は PostgreSQL (現時点では 8.1) で SQL 関数を作成しました。これは、文字列入力に対してクリーンアップを行います。価値のあることとして、文字列は LDAP 識別名であり、コンマの後に一貫してスペースがないようにしたいと考えています。関数は clean_dn() であり、クリーンな DN を返します。別のいくつかの列へのすべての入力を小文字などに強制するために同じことをしたい-これは、この部分を理解すれば簡単なはずです。

とにかく、誰かがその列に挿入または更新および変更しようとするたびに、この関数をテーブルの「dn」列で実行したいと考えています。しかし、私が見つけることができるすべてのルールの例は、すべての挿入/更新クエリがテーブル内のすべての列を常に変更することを前提としているようです。私の状況では、そうではありません。私が本当に欲しいと思うのは、true または false を返すのではなく値を変更するだけの制約ですが、SQL の制約の考え方では意味がないようです。ルールで NEW テーブルに UPDATE を実行する必要がありますか? NEW 値の可能な組み合わせごとに新しいルールを作成する必要がありますか? また、列を追加する場合、考えられるすべての新しい列の組み合わせを反映するために、すべてのルールの組み合わせを調べて更新する必要がありますか?

簡単な方法があるはずです...

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

sql - SQLスライディングウィンドウ-間隔全体で最大値を見つける

スライディングウィンドウに問題があります。具体的には、ウィンドウをどこから開始し、どこで終了するかわかりません。インターバル/ウィンドウのサイズを知っています。

最良の(または、見方によっては最悪の)ケースシナリオを提供するウィンドウの開始/終了を見つける必要があります。

データセットの例を次に示します。

間隔を5分にする必要があることを知っているとしましょう。したがって、「値」の合計が最も高い5分間隔に含まれる値とタイムスタンプを知る必要があります。上記の例では、「2013-02-2000:04:00」から「2013-02-2000:08:00」までの行は、400 + 500 + 600 + 500 + 400=2400の合計になります。 、これはその表の5分間で最も高い値です。

必要に応じて複数のテーブルを使用することに反対していません。しかし、私は「ベストケースシナリオ」の間隔を見つけようとしています。結果は、間隔を相殺する限り、どちらの方向にも進むことができます。その間隔ですべてのデータポイントを取得しても、引き続き機能します。始点と終点がわかれば、それらも使えます。

SQLのスライディングウィンドウの問題をいくつか見つけましたが、ウィンドウサイズが既知の要因であり、開始点が不明な場所は見つかりませんでした。

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

linux - RHEL への Postgresql 8.1.17 サーバーのインストール

PostgreSQL 8.1.17 サーバー上に本番データベースがあります。ある Linux サーバーから別の Linux サーバーに移行したいと考えています。

別の Linux サーバーでは、rpm を使用して PostgreSQL 8.1.17 サーバーをインストールできません。http://yum.postgresql.org/8.1/redhat/rhel-5-x86_64/リンクから rpm ファイルを取得しました。しかし、rpm -i postgresql-8.1.17-1PGDG.rhel4.x86_64.rpm を使用して rpm リポジトリを更新しているときに、以下のエラーが発生します。

エラー: 失敗した依存関係: postgresql-8.1.17-1PGDG には libcrypto.so.4()(64 ビット) が必要です。 rhel4.x86_64 libreadline.so.4()(64bit) は postgresql-8.1.17-1PGDG.rhel4.rhel4.x86_64 で必要です。 libssl.so.4()(64bit) は postgresql-8.1.17-1PGDG.rhel4 で必要です。 x86_64 libtermcap.so.2()(64bit) は postgresql-8.1.17-1PGDG.rhel4.x86_64 で必要です

この依存関係を解決するにはどうすればよいですか。

8.1 バージョンのサポート終了 (EOL) の日付は 2010 年 11 月です。2010 年 11 月以降は 8.1 バージョンをインストールできなくなるということですか。以下のリンクを参照してください。

http://www.postgresql.org/support/versioning/

今のところ、PostgreSQL のバージョンをアップグレードしたくありません。

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

database - PostgreSQL の大規模な更新を行おうとしていますが、適切な方法がわかりません

PostgreSQL 8.1.23 でこのようにデータベースの更新を実行しようとしています。同時に約 800 の ID でこの更新を行う必要があります。どんな助けでも大歓迎です。