我想在具有以下条件的 CakePHP 应用程序中的表上执行find('all')查询:
1- 主键值等于 17
和
2-表中另一列my_column_id
的值是该列所有值的最大值my_column_id
但小于my_column_id
主键值等于17的数据的值
和
3-表中另一列my_column_id
的值是该列所有值的最小值,my_column_id
但大于my_column_id
主键值等于17的数据的值
所以上面的查询应该给我 3 个结果。
是否有可能在一个查询中获得所有这些?还是我需要三个单独的查询?
我试过类似的东西:
$results = $this->Model->find('all', array(
'conditions' => array(
'MAX(Model.my_column_id) <' => 23,
'Mddel.id' => 17,
'MIN(Model.my_column_id) >' => 23
)
));
23
表示my_column_id
主键等于 17 的数据的值
但这给了我以下错误:SQL Error: 1111: Invalid use of group function
请提供任何帮助。