- # 2008/12/12(Fri) : [ORACLE] [SQL] [PERL] お仕事メモ
・レコードに行番号(連番)を割り当てる
(1) ROWNUM を使う
Ex: SELECT ROWNUM ,... FROM ...
※注意※ ROWNUM は ORDER BY で並び替えを行う前に番号を割り当てる。
(2) ROW_NUMBER を使う
Ex: SELECT ROW_NUMBER() OVER (ORDER BY ...) ,... FROM ...
・グループ毎にレコードに行番号(連番)を割り当てる
(1) ROW_NUMBER と PARTITION BY を使う
Ex: ROW_NUMBER() OVER (PARTITION BY ... ,... ORDER BY ... ,...)
・Windows 環境で ActivePerl と Oracle を同時に使うには
そのままだとライブラリの検索パスが衝突するので、以下のようにソース内でライブラリの検索パスを設定する。
BEGIN {
@INC = ('/Perl/site/lib','/Perl/lib');
$ENV{'NLS_LANG'} = 'Japanese_Japan.UTF8';
}
・UTF8 で出力する
binmode STDOUT,':utf8';
binmode STDERR,':utf8';
use utf8;
・UTF8 フラグを付ける
use utf8;
utf8::decode($str) # 破壊的
use Encode;
$str = Encode::decode('utf8',$str);
Perl の Unicode まわりは悪夢のようだ...
[TOP] [ALL]

© 2005-2010 M-OZ SOFT.
Powered by Gauche Ver.0.8.10