gpt4 book ai didi

sql - 在 Zend Framework 2 的 SQL 查询中使用 case/when/then

转载 作者:行者123 更新时间:2023-12-04 23:52:43 26 4
gpt4 key购买 nike

我有疑问:

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');

有更好的答案吗?

谢谢。

最佳答案

$select = $sql->select ('some_table');
$select->columns(array(
new Expression('CASE WHEN col_1 = 1 THEN 0
WHEN col_2 = 1 THEN 1
WHEN col_3 = 1 THEN 2
END AS merge_col'), 'user_name', 'group_id'))
->where ('group_id = 10')
->order ('merge_col');

关于sql - 在 Zend Framework 2 的 SQL 查询中使用 case/when/then,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20213247/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com