凡ミスで1時間程ハマった。
pg_num_row()は結果の行数を返すメソッド。
今回使ったSQLは以下。
select count(*) from tb_test;
単純に count() を使ったSQLなんだけど、
これではダメなことに気づかなかった。
count() は結果がなくても「0」という結果を返すので、
pg_num_row() の結果は1になる。
1行データあるもんね・・・。
count() が 0 なのに、なぜpg_num_row() は 1 になっているんだ????
なんて思っていました。
これで1時間をムダにしたのは厳しい。