Синтаксис, который вы ищете:
$m->search(
\[ q{strftime('%Y-%m', mtime, "unixepoch") = ?}, "2009-08" ]
);
Да, это массив - ref -ref. Первый элемент - это литеральный SQL, которому разрешено использовать ?
заполнителей, а остальные элементы являются значениями для привязки к этим заполнителям, и DBIC позаботится о внутреннем переупорядочении, чтобы эти значения были помещены в нужное место в привязке список при выполнении запроса.
Если вам нужно объединить один из них с другими критериями, поскольку arrayrefref не является допустимым хеш-ключом, вам нужно использовать синтаксис -and
:
$m->search({
-and => [
foo => 'bar',
\[ q{ SQL }, $bind ],
],
});
Вот раздел SQL :: Abstract docs для этой конструкции.