豚吐露@wiki
PostgreSql
最終更新:
ohden
                                     - 
                                    view
                                
                                前提条件
Ubuntu8.10server
EnterpriseDB
Postgres Plus Advanced Server
http://www.enterprisedb.com/products-services-training/products/postgres-plus-advanced-server
Download
Postgres Plus Advanced Server
http://www.enterprisedb.com/products-services-training/products/postgres-plus-advanced-server
Download
~ tips ~
■ キャスト
CAST(x AS typename)
x::typename
■ キャスト
CAST(x AS typename)
x::typename
e.g.)
((E'3461')::numeric)
■ 文字列の前に付ける『E』
PostgreSQL 9.1から『standard_conforming_strings』がデフォルトonとなったらしい。
『standard_conforming_strings = on』が設定されている状態では、文字列中のエスケープシーケンスがエスケープシーケンスとして扱われない。つまりエスケープ文字がエスケープ文字として扱われず、ただの『\』となってしまう。
回避策としては、『standard_conforming_strings = off』とするか、『E'string'』と書く。
環境移行時に、大量に修正箇所があって移植が困難な状況とかで無い限りは『E'string'』を用いること。
PostgreSQL 9.1から『standard_conforming_strings』がデフォルトonとなったらしい。
『standard_conforming_strings = on』が設定されている状態では、文字列中のエスケープシーケンスがエスケープシーケンスとして扱われない。つまりエスケープ文字がエスケープ文字として扱われず、ただの『\』となってしまう。
回避策としては、『standard_conforming_strings = off』とするか、『E'string'』と書く。
環境移行時に、大量に修正箇所があって移植が困難な状況とかで無い限りは『E'string'』を用いること。
更新日: 2018年09月12日 (水) 10時08分40秒
-  nullの項目を頭に持ってくる→ 
 `select * from table_name order by sort_code asc nulls first;`
 nullの項目をケツに持ってくる→
 `select * from table_name order by sort_code asc nulls last;`
 これを使えば降順の時は頭、昇順の時はケツとかその逆も可能になる。
 ちなみに、Oracleも使えるみたいだけど、mysqlは使えねぇ... -- (s1n) 2018-09-12 10:14:25
-  test環境やlocal環境で完結する話なら性能を簡単に上げられる。 
 お客様環境とかでは絶対設定してはいけない。
 `/etc/postgresql/10/main/postgresql.conf`の`fsync = off`とする。
 システムコールfsyncはメモリ上とディスク上のfileを同期させる処理。
 なので、停電などでメモリ上にしかないlogが消えると復旧が困難になったり、所望の状態へrollbackしたりが大変になるかもしれない。
 local環境やtest環境ならoffってしまえば性能を容易に上げられる。
 -- (s1n) 2018-09-21 09:19:02









