gpt4 book ai didi

MySQL - 嵌入式选择 - 如何将行放入列中?

转载 作者:行者123 更新时间:2023-11-30 21:50:50 25 4
gpt4 key购买 nike

早上好,我正面临一个奇怪的内置数据库,我正在尝试请求它。

我的要求:

use redmine_tma_ibp;
SELECT issues.id, custom_fields.name, custom_values.value FROM redmine_tma_ibp.issues
join custom_values
on issues.id = custom_values.customized_id
join custom_fields
on custom_values.custom_field_id = custom_fields.id
join enumerations
on enumerations.id=issues.priority_id
where (enumerations.type="IssuePriority" and (enumerations.position=1 or enumerations.position=2))
and (status_id=3 or status_id=5)
and (custom_fields.name = "Date de résolution" or custom_fields.name="Date d'ouverture")
and str_to_date(custom_values.value, '%d/%m/%Y %H:%i') > date('2016-01-01');

它显示以下内容:

13430   Date de résolution  20/01/2016 16:52:27
14336 Date de résolution 04/01/2016 16:07:06
15705 Date d'ouverture 02/01/2016 00:28:46
15705 Date de résolution 04/01/2016 11:11:04
15774 Date d'ouverture 05/01/2016 11:15:06
15774 Date de résolution 05/01/2016 15:55:43
15790 Date d'ouverture 05/01/2016 16:24:20
15790 Date de résolution 06/01/2016 10:42:28
15917 Date d'ouverture 07/01/2016 16:04:31
15917 Date de résolution 07/06/2016 11:43:08
15955 Date d'ouverture 11/01/2016 02:21:48
15955 Date de résolution 12/01/2016 11:19:21
15998 Date de résolution 13/01/2016 10:35:29

我需要转换我的请求,以便让一列包含“Date d'ouverture”,另一列包含“Date de resolution”,相应列内的相应日期并按 id 分组。

我无法更改只读的数据库结构。

请帮帮我....

最佳答案

这是一个枢轴:

SELECT issues.id,
MAX(CASE WHEN custom_fields.name='Date de résolution'
THEN custom_values.value
ELSE '-'
END) AS 'Date de résolution',
MAX(CASE WHEN custom_fields.name='Date d\'ouverture'
THEN custom_values.value
ELSE '-'
END )AS 'Date d\'ouverture'
FROM [....]
GROUP BY issues.id

我将 MAX() 的技巧用于分组依据。

关于MySQL - 嵌入式选择 - 如何将行放入列中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47347331/

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