为什么这个顺序没有随机化?

时间:2010-08-02 18:22:59

标签: php zend-framework zend-db-table

我正在使用Zend框架并尝试以随机顺序获取结果。这会返回结果,但似乎不会改变顺序。有什么想法吗?

    class Model_DBTable_Tblquotes extends Zend_Db_Table
{
public function getQuotes()
 { 
  $select = $this->select();  
        $select->setIntegrityCheck(false) 
               ->from('tblQuotes',array('id','quote','author','dateCreated')) 
      ->order(new Zend_Db_Expr('RAND()'))
      ->limit(25, 0);

        return $this->fetchAll($select);

 }
}

2 个答案:

答案 0 :(得分:1)

你试过吗

 ->order('RAND()')

而不是

 ->order(new Zend_Db_Expr('RAND()'))

您也可以使用

 $select->__toString();

在您的db obj上获取查询字符串,以便您可以回显并查看它以查看错误。

答案 1 :(得分:0)

你需要将表达式作为字符串传递:“RANDOM()”

示例: - > order(new Zend_Db_Expr('RANDOM()'));