Ошибка в операторе zend_db_select для возврата в виде нового столбца

Я пытаюсь выполнить возврат с новым столбцом с именем count. Вот мой вопрос. $ userid - это параметр, который нужно передать

        $select = $this->db->select()
            ->from('myfriend')
            ->where('fromid=?', $userid)
            ->join('user', 'user.userid = friends.toid')
            ->columns( new Zend_Db_Expr('Select count(*) where friends.toid = $userid as count'))
            ->order("id desc")
            ->limit(20);

Я хочу вернуть новый столбец с именем count. где будет отображаться количество строк, где friends.toid = userid.

Кажется, есть синтаксическая ошибка.


person Slay    schedule 26.07.2013    source источник


Ответы (1)


Вы должны использовать двойные кавычки, а не одинарные, поэтому php может оценивать $userid, например "Select count(*) where friends.toid = $userid as count"

Если вы хотите отладить свой запрос, вы всегда можете использовать:

echo $select->__toString()
person Rodrigo Riquelme Espinosa    schedule 05.11.2013