Web・IT うんたらら

業務系とWeb系の狭間でIT業界を彷徨いながら備忘録と足跡を残していきます

PostgreSQL

CentOS 5にPostgreSQL 9.3をyumでインストール

これでOK。 # rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/uuid-1.5.1-3.el5.i386.rpm # rpm -ivh http://yum.postgresql.org/9.3/redhat/rhel-5-i386/pgdg-centos93-9.3-1.noarch.rpm # yum install --enablerepo=pgdg93 postgresql93* 64bitの…

【SQL】全項目(カラム)に対して置換などの処理を行いたい

全てのカラムに対して同じ条件で文字列の一括置換を行いたい場合ありますよね? UPDATEコマンドは、たとえSETする値が同じでも、一つ一つのカラムに対して値を記述しなくてはいけません。面倒なのでシェルスクリプトで自動化しましょう。以下は、全カラムのh…

PostgreSQLでCOPY FROM...で追加した後のパフォーマンスについて

PostgreSQLで大量のデータを追加する場合、INSERTよりもCOPY FROM ...コマンドで追加した方が圧倒的に高速なのはよく知られていますが、どうにもその後の運用におけるSQLのパフォーマンスが悪い…遅い!遅すぎる!と困っていました。 例えばウン1000万件のデ…

【PostgreSQL】大文字小文字を区別せずに置換

table_nameテーブルのcolumn_1に含まれる大文字小文字ごちゃまぜのhogehogeを 全部まとめてfugafugaに置換したい時の処理について。 とりあえず正解から。 UPDATE table_name SET column_1 = REGEXP_REPLACE(column_1, '(?i)hogehoge', 'fugafuga') WHERE co…

PostgreSQLが正常に起動しないとき

先日Windows環境でPostgreSQLを利用する機会があったので とりあえず最新版(PostgreSQL 9.2.2)をインストールしてみました。 ほうほう、専用のパッケージ管理システムもあるのね……。 しかも今風のGUIで無駄にかっこいい……などと思いながら無事にインストー…