Я работаю над cakePHP 3. У меня есть пользовательская функция (UDF или Routine) в базе данных MySQL. Эта функция принимает два параметра и возвращает целочисленное значение. Я должен соответствовать это возвращаемое значение в MySQL, где предложение.
Я знаю запрос MySQL, чтобы использовать эту функцию. то есть,
SELECT customer_id FROM table_name WHERE routine_name(param1, param2)=1; //param1 is 'customer_id' which I have written after SELECT
Но я не знаю, как построить этот запрос в cakePHP 3. Если кто-нибудь знает решение, ответ будет благодарен.
Вот мой код cakePHP 3.
$purchasesTable = TableRegistry::get("Purchases");
$query = $purchasesTable->find();
$fields = ['customer_id'];
$query->select($fields);
$query->where(
// Routine/Function call should be here as per MySQL query.
// So, I think here I have to do something.
);
Я получил решение .. Вот оно.
$abc = $query->func()->function_name(['param1' => 'literal']);
$query->where(function ($exp) use ($abc) {
return $exp->gt($abc, 14);
});
Других решений пока нет …