All pastes #161480 Raw Edit

Stuff

public text v1 · immutable
·published 2006-09-05 13:54 UTC
rendered paste body
DBIx::Class Query:

my $runs = $schema->resultset('ScheduleRun')->search({
  -or => [
    -and => [
      'schedule.initiated' => 0,
      \'UNIX_TIMESTAMP(schedule.first_run) > now()',
    ],
    -and => [
      'schedule.initiated' => 1,
      \'(select UNIX_TIMESTAMP(rt.run_begin) from schedule_runs rt where rt.sched_id = me.sched_id order by id desc limit 1) + schedule.frequency > now()',
    ],
  ]
},
{
  join => qw/schedule/,
  prefetch => qw/schedule/,
});

REAL Query:

SELECT me.id, me.sched_id, me.run_begin, me.run_end, me.success, me.description, schedule.id, schedule.source_id, schedule.first_run, schedule.initiated, schedule.frequency FROM schedule_runs me  JOIN schedule schedule ON ( schedule.id = me.sched_id ) WHERE ( ( ( ( ( schedule.initiated = ? ) AND UNIX_TIMESTAMP(schedule.first_run) > now() ) ) OR ( ( ( schedule.initiated = ? ) AND (select UNIX_TIMESTAMP(rt.run_begin) from schedule_runs rt where rt.sched_id = me.sched_id order by id desc limit 1) + schedule.frequency > now() ) ) ) ): '0', '1'