我正在寻找如何扩展Zend_DB_Table以适应BETWEEN两个日期语法和LIMIT语法
我目前的构造是
class Model_DbTable_Tablelist extends Zend_Db_Table_Abstract
{
protected $_name = 'mytable';
$select = $this->select()
->setIntegrityCheck(false)
->from('mytable',
array('MyCol1', 'MyDate'));
}
我希望它扩展为等同于下面的查询
SELECT MyCol1,MyDate FROM mytable
WHERE MyDate BETWEEN '2008-04-03' AND '2009-01-02'
LIMIT 0,20
有什么想法吗?
答案 0 :(得分:5)
关于BETWEEN,在Zend网站上报告了this issue - 它似乎仍然是开放的。提到的解决方法是使用类似
的东西$this->where('MyDate > ?', '2008-04-03')->where('MyDate < ?', '2009-01-02');
看起来您可以使用“limit”方法向SQL添加LIMIT子句,例如
->limit(0, 20);
分享并享受。
答案 1 :(得分:1)
$ adapter = $ this-&gt; getAdapter();
$ dt =“日期之间?和?”;
$ dt = $ adapter-&gt; quoteInto($ dt,“04-01-2010”,null,1);
$ dt = $ adapter-&gt; quoteInto($ dt,“05-01-2010”,null,1);
$这 - 化合物其中($ DT)
答案 2 :(得分:0)
请注意 - &gt; limit(0,20)表示对返回行数没有限制,但跳过前20行。