2009-10-29 2 views
1

저는 SQLite 데이터베이스를 가지고 있습니다. 결국 MySQL 데이터베이스가 될 것이고 저는 Zend Framework를 사용하고 있습니다. 'date_accepted' 열이 비어있는 테이블의 모든 행을 가져 오려고합니다./null/값이 없습니다. 이것은 내가 지금까지 가지고있는 것입니다 :Zend_Db를 사용하여 열 값이 비어 있거나 null 인 행을 선택하는 방법은 무엇입니까?

public function fetchAllPending() 
{ 
    $select = $this->getDbTable()->select(); 
    $select->where('date_accepted = ?', 'null'); 
    return $this->fetchAll($select); 
} 

내가 뭘 잘못하고 있니? 이것을 일반 SQL로 작성하거나 Zend_Db_Select을 어떻게 쓰겠습니까?

답변

1

두 가지 가능한 문제가 있습니다. getDbTable 함수는 무엇입니까? 클래스가 Zend_Db_Table에서 상속받은 경우 함수가 필요하지 않아야합니다. 두 번째 아마 당신은 null 대신에 = null을 쿼리에 null을 인용하여 시도해야합니다.

public function fetchAllPending() 
{ 
     $select = $this->select()->where('date_accepted IS NULL'); 
     return $this->fetchAll($select); 
} 
+0

이 기능은 데이터 맵퍼 개체에 있습니다. (그것이 최고의 장소인지에 관해 명확히하지 않는다. 그러나 그것은 일한다). 하지만 NULL은 나를 위해 일해서 감사합니다! – Andrew

+0

Zend 2.4.7의 TableGateway를 사용하면서 다음과 같은 유용한 http://stackoverflow.com/a/32238396/3112527을 발견했습니다. – m1st0

관련 문제