필드 user_id에 의해 사용자 모델에 해당하는 주문 모델이 있습니다. 이제 각 사용자 당 1 개의 가장 오래된 주문을 받고 싶습니다.모델 그룹 및 주문
id = 0, user_id = 1, created = 2012-10-10 20:36:42
id = 1, user_id = 1, created = 2012-10-10 19:36:42
id = 2, user_id = 1, created = 2012-10-10 21:36:42
id = 3, user_id = 2, created = 2012-10-10 22:36:42
id = 4, user_id = 2, created = 2012-10-10 21:36:42
id = 5, user_id = 2, created = 2012-10-10 23:36:42
그래서해야 될 :
id = 1, user_id = 1, created = 2012-10-10 19:36:42
id = 4, user_id = 2, created = 2012-10-10 21:36:42
을 내가 지금 찾기 옵션 다음 사용하고 있습니다 :
array(
'group' => 'user_id',
'order' => array('MIN(created) DESC'),
)
또한 'order' => array('created DESC')
과 노력하지만 아무튼 예를 들어 GROUPING 명령은 항상 ORDERING 전에 수행됩니다. 그룹화하기 전에 find 메소드가 생성 된 필드별로 레코드를 정렬하도록 할 수 있습니까?
나는 그것을 시도했다 - min_created 필드가 정확한 (가장 오래된 날짜)이지만 주문 레코드가 틀리다 (다른 생성 날짜로) – user606521