将查询从SQL转换为cakephp

时间:2016-08-25 09:20:51

标签: cakephp

我有一个SQL查询,如:

SELECT a,b,c
from 'table '
where a like '$ae%' and b = '$b'.

此处$a是一个数字字段。 我需要以下面的形式编写上述查询:

$abc = ClassRegistry::init('Model Name')->find('list', array('fields' => array('a,', 'b'), 'conditions' => array('b' => array($b),'a LIKE'=>'$a%'),));

1 个答案:

答案 0 :(得分:1)

我建议你去阅读文档。

还记得要总是引用确切的蛋糕版本,如果你有一些错误,请在你的问题中显示错误。

无论如何,既然你确实展示了一些努力,这里就是使用cake3进行查询的方式:

首先不要使用find('list'),除非你真的想要一个键值数组。但是,由于您希望3个字段使用find('all')或仅find()

$query = $yourTable->find()
    ->select(['a', 'b', 'c')
    ->where([
        'b' => $b,
        'a LIKE' =>"%$a%"
    ]);

然后,如果你想要一个数组,你必须在查询上调用toArray()

$result = $query->toArray();