my $count = Core::Models->resultset('Shipment')->search( undef )->count(); #### my $count = Core::Models->resultset('Shipment')->search( { 'rma.id' => {'!=' => undef} }, { prefetch => 'rma' } )->count(); #### SELECT COUNT( * ) FROM (SELECT me.id FROM shipment me LEFT JOIN rma rma ON ( rma.shipment_reference = me.ref AND rma.merchant_id = me.api_merchant_id ) WHERE ( rma.id IS NOT NULL ) GROUP BY me.id) me