Сортировать по разнице между 2 столбцами

У меня есть запрос mysql для oreder, используя разницу двух полей одной и той же таблицы

SELECT *
FROM postings
ORDER BY vote_up - vote_down;

это работает

Как я пишу этот запрос, используя критерии продвижения,

Пишу так $criteria->addDescendingOrderByColumn(self::VOTE_UP-self::VOTE_DOWN)

но делает ошибки. Кто-нибудь знает, пожалуйста, помогите.

Помощь очень ценится.

Спасибо,


person user232751    schedule 12.04.2011    source источник
comment
Какие ошибки? Он без проблем работает с доктриной: Doctrine :: getTable ('Модель') - ›createQuery ('m') -› orderBy ('m.vote_up - m.vote_down DESC') - ›execute ();   -  person Dziamid    schedule 13.04.2011
comment
Какая версия Propel? В ModelCriteria.php в функции getSelectStatement вы можете сделать sfContext::getInstance()->getLogger->log($sql) после строки, которая говорит $sql = BasePeer::createSelectSql($this, $params); (или что-то подобное, если оно отличается в вашей версии Propel). Это самый простой способ увидеть, какой SQL создается; очевидно, уберите отладку, когда закончите.   -  person matt    schedule 13.04.2011


Ответы (1)


Пытаться:

$criteria->addDescendingOrderByColumn(self::VOTE_UP.' - '.self::VOTE_DOWN)

person matt    schedule 12.04.2011