Monday, February 7, 2022

[FIXED] How to convert sql query to cakephp query and use in controller

Issue

SELECT count(*) FROM payments WHERE status='Success' and createddate BETWEEN '2020-05-05' AND '2020-05-06'

$numcount= TableRegistry::get('Payments')->find('all', array(
    'conditions' => array('status'=>'Success','and' => array(
    array('createddate <= ' => $date1,
        'createddate >= ' => $date2
    )
))))->count();

Please help. Thanks in advance. I tried but the code doesn't work.


Solution

You've got your dates backwards. Also, you don't need an extra 'AND' in your conditions, they're all AND by default.

$numcount= TableRegistry::get('Payments')->find('all', array(
    'conditions' => array(
        'status' => 'Success',
        'createddate >=' => $date1,
        'createddate <=' => $date2
    )
))->count();


Answered By - Greg Schmidt

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.