0
저는 현재 Zend의 Table 객체에서 내 쿼리를 실행하고 반환 값으로 Rowset을 얻는 방법을 고민하고 있습니다. 이유는 내가 필요한 이유는 기존 프로젝트의 코드를 수정하고 유연성이 많지 않기 때문입니다.테이블에서 하위 쿼리를 사용하여 쿼리를 실행하고 Zend에서 결과로 행 집합 개체를 가져 오는 방법은 무엇입니까?
검색어 :
SELECT *
FROM `tblname` ud
WHERE ud.user_id = some_id
AND
(
(ud.reputation_level > 1)
OR
(
(SELECT COUNT(*)
FROM `tblname` t
WHERE t.user_id = ud.user_id
AND t.category_id <=> ud.category_id
AND t.city_id <=> ud.city_id
) = 1
)
)
객체 선택를 사용하여이 쿼리를 설명 할 수있는 방법이 있나요?
이전 SQL 솔루션은 매우 간단 한 구성 WHERE 절 :
나는 (그것이 기존의 코드에 의해 처리 될 수 있도록)하지만 더 복잡한 쿼리에 대한 결과의 동일한 유형을 생성 할 필요가$where = $this->getAdapter()->quoteInto("user_id = ?",$user_id);
return $this->fetchAll($where);
.
것들 내가
$db = Zend_Db_Table::getDefaultAdapter();
return $db->query($sql)->fetchAll();
---------------- OR ----------------------
return $this->fetchAll($select);
---------------- OR ----------------------
return $this->_db->query($sql)->fetchAll();
을 시도했다 그러나 그들은 하나가 아닌 객체의 배열을 생산하거나 리티 위반 메시지와 함께 실패합니다.
Zend에서 SQL 텍스트 쿼리를 처리하는 방법에 대한 도움을 주시면 감사하겠습니다. 모든 가져 오기 모드 목록은