나는 테이블을 활동이 : 나는 모든 IP 및 기타 데이터를 선택해야지정된 열에서 가장 높은 값을 가진 행을 선택하지 고유 값은해야 별개의
id last_active login ip 1 1000 user1 192.168.10.10 2 2000 user2 192.168.10.20 3 3000 user3 192.168.10.30 4 4000 user1 192.168.10.10 5 5000 user2 192.168.10.20 6 6000 user2 192.168.10.20 7 7000 user1 192.168.10.10
을 행이 있지만 어디에만 last_active이 가장 높습니다. 그래서 결과는 좋아한다 :
3 3000 user3 192.168.10.30 6 6000 user2 192.168.10.20 7 7000 user1 192.168.10.10
내가 사용하여 시도했다 :
ORM::factory('Activity')->order_by('last_active','DESC')->group_by('ip')->find_all();
을하고 그 결과는 다음과 같습니다 당신이 볼 수 있듯이
array(4) ( "id" => string(1) "3" "last_active" => string(4) "3000" "login" => string(5) "user3" "ip" => string(13) "192.168.10.30" ) array(4) ( "id" => string(1) "2" "last_active" => string(4) "2000" "login" => string(5) "user2" "ip" => string(13) "192.168.10.20" ) array(4) ( "id" => string(1) "1" "last_active" => string(4) "1000" "login" => string(5) "user1" "ip" => string(13) "192.168.10.10" )
, 나는 별개의 IP를 가지고 last_active 값이 올바르지 않습니다. 아이디어가 있으십니까? 순수 SQL 문 또는 DB :: 선택() 대답은 OK :-)에게
내가 당신이 ORM –