的SQL查詢,我查詢:使用情況/時/然後在Zend框架2
SELECT user_name, group_id,
CASE WHEN col_1 = 1 THEN 0
WHEN col_2 = 1 THEN 1
WHEN col_3 = 1 THEN 2
END as merge_col
FROM some_table
WHERE group_id = 10
ORDER BY merge_col.
如何使用ZF2和的Zend \ .. \ SQL,我可以實現這個查詢?
更新:
感謝誰試圖幫助我。它的工作如下:
$select->columns(array(
'user_name',
'group_id',
'merge_col' => new Expression('CASE WHEN col_1 = 1 THEN 0
WHEN col_2 = 1 THEN 1
WHEN col_3 = 1 THEN 2 END')))
->where (array('group_id'=> 10))
->order ('merge_col');
有沒有更好的答案?
謝謝。
你也可以在Expression對象使用''不是數字,以便ZF2可以瞰它?'新的表達(「CASE WHEN COL_1 =那麼當COL_2 =那麼當col_3 =呢?????? END',array(1,0,1,1,1,2))' –