Doctrine 添加由其他字段确定的列
我有一张非常简单的桌子。让我们说: 测试Doctrine 添加由其他字段确定的列,doctrine,dql,Doctrine,Dql,我有一张非常简单的桌子。让我们说: 测试 --------------------------- | id | group | value | --------------------------- | 1 | A | 10 | | 2 | A | 11 | | 3 | A | 12 | | 4 | B | 20 | | 5 | B | 21 | | 6
---------------------------
| id | group | value |
---------------------------
| 1 | A | 10 |
| 2 | A | 11 |
| 3 | A | 12 |
| 4 | B | 20 |
| 5 | B | 21 |
| 6 | B | 22 |
---------------------------
对于DQL语句,我想添加一列,指示条目是否具有每个组的最大值
:
-----------------------------------------------
| id | group | value | calculatedColumn |
-----------------------------------------------
| 1 | A | 10 | 0 |
| 2 | A | 11 | 0 |
| 3 | A | 12 | 1 |
| 4 | B | 20 | 0 |
| 5 | B | 21 | 0 |
| 6 | B | 22 | 1 |
-----------------------------------------------
我能够在sql中执行该操作。但是在DQL中,我得到了一个语法错误。以下是我尝试过的一些查询:
SELECT T.id, T.group, T.value,
(SELECT (CASE WHEN (SELECT T.id, MAX(T.value) AS HIDDEN d ORDER BY T.value) = T.id THEN 1 ELSE 0 END)) AS calculatedColumn
FROM test T
SELECT T.id, T.group, T.value,
(SELECT (IF (SELECT T.id, MAX(T.value) AS HIDDEN d ORDER BY T.value) = T.id)) AS calculatedColumn
FROM test T
有没有办法实现这种功能