Class::DBI::View

Class::DBI::View

 Class::DBI的には「VIEW使えよ」って感じなんじゃないのかなと、個人的には感じてるのですけれど。PostgreSQLならVIEWも使えるので、そちらのほうがいいんじゃないでしょうか。

 と書きましたが、Class::DBI::Viewというのがありました。

 VIEWを擬似的に作るもので、「テンポラリテーブルを使う」「サブクエリを使う」「HAVINGを使う」が選べる模様。

 そうそう、Plugin::Iteratorのオプションとして書くのではなく、

package CD::Music::SalesRanking;
use base qw(CD::DBI); # your Class::DBI base class
use Class::DBI::View qw(SubQuery);
use Class::DBI::Plugin::Iterator::subquery;

のような書き方も出来ます。