2013-02-15 2 views
0

는 중공 난 내 테이블 select m.voterID, sum(jm.mark) from marks m left join marks jm on jm.id = m.id where jm.voterID in (1,2) group by m.voterIDYII CDbCriteria

에 대한 쿼리의 종류가 나는 라이트로는 CDbCriteria를 사용하는 방법을 이해하지 않습니다. 테이블 structute는

`id` int(11) NOT NULL AUTO_INCREMENT, 
    `voterId` int(11) NOT NULL, 
    `votedId` int(11) NOT NULL, 
    `mark` int(11) NOT NULL, 
    `creation_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, 
    PRIMARY KEY (`id`) 
+0

당신의 테이블 구조 이름 voterId 두 개의 열이있다? – FabianoLothor

답변

1
$criteria = new CDbCriteria(); 
$criteria->select = 'm.voterID, sum(jm.mark)'; 
$criteria->from = 'marks m'; 
$criteria->join = 'left join marks jm on jm.id = m.id'; 
$criteria->condition = 'jm.voterID in (1,2)'; 
$criteria->group = 'm.voterID';