読者です 読者をやめる 読者になる 読者になる

PostgreSQLでIPアドレスをソートする

PostgreSQL にて、IPアドレスをtext型に保存している場合、そのままソートしても意図したようにソートされない。

SELECT ip FROM nic ORDER BY ip;
      ip
--------------
 192.168.1.1
 192.168.10.1
 192.168.2.1
 192.168.20.1
 192.168.3.1


inet 型にCAST するだけ。

SELECT ip::inet FROM nic ORDER BY ip;
      ip
--------------
 192.168.1.1
 192.168.2.1
 192.168.3.1
 192.168.10.1
 192.168.20.1


参考:ネットワークアドレス型
http://www.postgresql.jp/document/8.4/html/datatype-net-types.html


という簡単な事なんだけど、以前に0詰めする方法書いてた。
shobon.hatenablog.com

何故0詰めしたのか・・・CSVに出力した後Excelでソートする時を考えての事だったか・・・

・・・覚えてない(´・ω・`)