gpt4 book ai didi

mysql - 计算 ID 与另一列中的特定值一起出现的次数

转载 作者:行者123 更新时间:2023-11-29 10:56:46 26 4
gpt4 key购买 nike

如果你能帮我解决语法问题,我需要以下内容我有一个包含 2 个字段 ID 和优先级的表,如下所示:

ID | Priority |
---------------
101| 1 |
105| 2 |
200| 3 |
104| 4 |
400| 5 |
400| 1 |
102| 2 |
120| 3 |
150| 4 |
210| 5 |
109| 1 |
104| 2 |
200| 3 |
105| 4 |
250| 5 |

我需要的是这个结果(最好)

ID  |TP1|TP2|TP3|TP4|TP5|
-------------------------
101 | 1 | | | | |
102 | | 1 | | | |
104 | | 1 | | 1 | |
105 | | 1 | | 1 | |
109 | 1 | | | | |
120 | | | 1 | | |
150 | | | | 1 | |
200 | | | 2 | | |
250 | | | | | 1 |
400 | 1 | | | | 1 |

至少这个:

ID | P | T |
------------
101| 1 | 1 |
102| 2 | 1 |
104| 2 | 1 |
104| 4 | 1 |
105| 2 | 1 |
105| 4 | 1 |
109| 1 | 1 |
120| 3 | 1 |
150| 4 | 1 |
200| 3 | 2 |
250| 5 | 1 |
400| 1 | 1 |
400| 5 | 1 |

抱歉。我没有复制这部分。

该表有一堆 ID,每个 ID 都有一个优先级(从 1 到 5)。我需要的是计算任何 ID 具有优先级 1、优先级 2 等的次数。

如果你看看 ID 200 出现了 2 次,优先级为 3预先感谢您对此的任何提示。

最佳答案

你可以使用这样的东西:

SELECT ID, SUM(IF(Priority = 1, 1, 0)) TP1, SUM(IF(Priority= 2, 1, 0)) TP2, SUM(IF(Priority = 3, 1, 0)) TP3, SUM(IF(Priority = 4, 1, 0)) TP4, SUM(IF(Priority= 5, 1, 0)) TP5 FROM `tab1` GROUP BY ID

关于mysql - 计算 ID 与另一列中的特定值一起出现的次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42915896/

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