我尝试获取学生的结果(最后插入)。
我可以轻松地使用 mysql 查询来获取记录。
SELECT student.first_name,student.last_name,result.*
FROM result
join student
on student.student_id=result.student_id
WHERE result.id IN (
SELECT MAX(result.id) FROM result GROUP BY result.student_id
)
我尝试将其转换为 cake-php,就像这样使用分页
$this->paginate = array(
'fields' => array(
'Student.first_name',
'Student.last_name',
'Result.*',
),
'joins' => array(
array(
'conditions' => array(
'Student.student_id = Result.student_id',
),
'table' => 'student',
'alias' => 'Student',
'type' => 'join',
),
),
'conditions' => array(
'Result.id' => array(
),
),
'limit'=>10,
'contain' => array(
'Student',
),
);
$data = $this->paginate('Result');
最佳答案
请尝试这个
$this->paginate = array(
'fields' => array(
'Student.first_name',
'Student.last_name',
'Result.*',
),
'joins' => array(
array(
'conditions' => array(
'Student.student_id = Result.student_id',
),
'table' => 'student',
'alias' => 'Student',
'type' => 'join',
),
),
'conditions' => array(
'Result.id IN ( SELECT MAX(result.id) FROM result GROUP BY result.student_id )
),
'limit'=>10
);
$data = $this->paginate('Result');
关于php - 如何在cakephp中加入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32837410/