Почему это не рандомизирует порядок? - PullRequest
2 голосов
/ 02 августа 2010

Я использую Zend Framework и пытаюсь получить результаты в случайном порядке. Это возвращает результаты, но, похоже, не меняет порядок. Есть идеи?

    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 ]

1 голос
/ 03 августа 2010

Вы пробовали

 ->order('RAND()')

вместо

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

Вы также можете использовать

 $select->__toString();

В вашей базе данных obj, чтобы получить строку запросатак что вы можете повторить это и посмотреть на него, чтобы увидеть, что не так.

0 голосов
/ 04 августа 2010

вам нужно передать выражение в виде строки: "RANDOM ()"

пример: -> order (new Zend_Db_Expr ('RANDOM ()'));

...