Mi sto bagnando i piedi in DBIx::Class — amandolo così lontano.Come posso filtrare un recordset DBIx Perl con 2 condizioni sulla stessa colonna?
Un problema che sto incontrando è che voglio interrogare i record, filtrando i record che non si trovano in un certo intervallo di date.
Mi c'è voluto un po 'per scoprire come fare un <=
tipo di partita, invece di partite uguaglianza:
my $start_criteria = ">= $start_date";
my $end_criteria = "<= $end_date";
my $result = $schema->resultset('MyTable')->search(
{
'status_date' => \$start_criteria,
'status_date' => \$end_criteria,
});
Il problema evidente di questo è che, poiché i filtri sono in un hash, io sono sovrascrivendo il valore per "status_date", e sto solo cercando dove lo status_date < = $ end_date. Lo SQL che viene eseguito è:
SELECT me.* from MyTable me where status_date <= '9999-12-31'
Ho cercato CPAN, Google e così e non sono stati in grado di capire come applicare 2 condizioni alla stessa colonna. Tutta la documentazione che sono stato in grado di trovare mostra come filtrare su più di 1 colonna, ma non 2 condizioni sulla stessa colonna.
Sono sicuro che mi manca qualcosa di ovvio. Qualcuno può indicarlo?
Perfetto! Questo è esattamente ciò di cui avevo bisogno! Se solo questo fosse meglio documentato ... Grazie mille, caro, lo apprezzo! – BrianH