Blast-Radius Aware AI Code Review for Business-Critical Systems
LiveReview LiveReview Explore LiveReview

Jifty::DBI::Collection::Unique - Ensure uniqueness of records in a collection

Author

       Simon Cozens.

Description

       Currently, Jifty::DBI makes exceptions for databases which cannot handle both "SELECT DISTINCT" and
       ordering in the same statement; it drops the "DISTINCT" requirement. This, of course, means that you can
       get the same row twice, which you might not want. If that's the case, use this module as a mix-in, and it
       will provide you with an "AddRecord" method which ensures that a record will not appear twice in the same
       search.

Name

       Jifty::DBI::Collection::Unique - Ensure uniqueness of records in a collection

Synopsis

           package Foo::Collection;
           use base 'Jifty::DBI::Collection';

           use Jifty::DBI::Collection::Unique; # mixin

           my $collection = Foo::Collection->New();
           $collection->SetupComplicatedJoins;
           $collection->OrderByMagic;

           while (my $thing = $collection->Next) {
               # $thing is going to be distinct
           }

See Also