2011-10-26 23 views
8

DBIx::Class ile birleştirme kullanmanın ve SQL'i el ile yazmaktan başka bir yöntem bulamadım. Bu bana garip geliyor. Ekstra çalışma olmadan iki ResultSets birliği olması için bir yol olmalı gibi hissediyorum çünkü set ekleme ve çıkarma SQL böyle bir çekirdek parçasıdır. Sendika yapmanın daha kolay bir yolu var mı? Değilse neden olmasın?DBIx :: Class sendikaları kullanıyor mu?

$db->resultset("Foo")->search({ -or => [ 
             'me.id' => { -in => $result_set_a }, 
             'me.id' => { -in => $result_set_b } 
             ] 
           }, 
           undef); 
: Çözüm olarak
my $rs1 = $rs->search({ foo => 'bar' }); 
my $rs2 = $rs->search({ baz => 'biff' }); 
for ($rs1->union($rs2)->all) { ... } 

cevap

İlgili konular