如何删除where子句上的特定条件(zend框架)


How to remove a specific condition on the where clause (zend framework)?

我有一个由第三方框架的默认库生成的以下查询

SELECT COUNT(*) AS "total_rows" FROM "papers" WHERE (papers.paper_trash=0 OR papers.paper_trash IS NULL) AND (paper_category_id='7') AND (qtdavaliacoes='0')

我知道如果我使用$query->reset(Zend_Db_Select::WHERE);,它将完全清除where子句,是否有可能使用zend仅从它清除AND (qtdavaliacoes='0')条件?

根据文档,不可能只重置WHERE条件的一部分。您需要:

  • 重置整个WHERE条件,并添加需要的条件;
  • 重新实例化对象并重新构建查询。