Как правильно использовать оператор IF в доктрине и SELECT AS? - PullRequest
0 голосов
/ 19 января 2011
$query = Doctrine_Query::create()
->select('IF(m.sender_id = ?, m.receiver_id, m.sender_id) AS uid', $my_id)
->from('Message m')
->where('m.receiver_id = ? OR m.sender_id = ?', array($my_id,$my_id))
->groupBy('uid')

Я не могу сгруппировать по 'uid', как будто AS uid вообще не работает ...

Если я пытаюсь получить сгенерированный sql через -> getSqlQuery () и попробую егопрямо в Mysql, работает.

SELECT IF(s.sender_id = 1, s.receiver_id, s.sender_id) AS s__0 
FROM message s 
WHERE (s.receiver_id = 1 OR s.sender_id = 1) GROUP BY s__0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...