MySQL - 如何按值分组并在同一行的不同列中显示

卡西乔特

我有源表,我想根据特定值对数量求和,并在按 id 分组时显示每个值的总和。

animal_id oh co gender
10        5   1   M
20        10  5   F
10        15  2   F
30        5   0   C
10        5   4   M
20        10  0   F

我需要一个输出

animal_id Moh Mco Foh Fco Coh Cco
10        10  5   15  2   0   0
20        0   0   20  5   0   0
30        0   0   0   0   5   0 

每列将显示每个性别的总和,每行将按动物 ID 分组。

我尝试使用 CASE 就像 MSSQL 一样,但它没有按每个性别求和。思考 PIVOT 但我对它不是很熟悉。我不知所措...

代码摩尔

尝试以下操作:

SELECT animal_id, 
SUM(IF(gender='M', oh, 0)) AS Moh, SUM(IF(gender='M', co, 0)) AS Mco, 
SUM(IF(gender='F', oh, 0)) AS Foh, SUM(IF(gender='F', co, 0)) AS Fco, 
SUM(IF(gender='C', oh, 0)) AS Coh, SUM(IF(gender='C', co, 0)) AS Cco
FROM anim_table
GROUP BY animal_id;

所以关键概念是结合SUM()IF()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何检查MySQL中同一行的多个值?

来自分类Dev

如何在MySQL表中为同一行的两列插入值

来自分类Dev

复制行并在同一表中插入一个不同值的MySQL字段

来自分类Dev

MySQL 在同一行中选择不同的值

来自分类Dev

mysql选择获取同一结果行中按列分组的行

来自分类Dev

MySQL的同一行不同的列引用(ifnull检查)

来自分类Dev

mysql总和与按不同列值分组

来自分类Dev

MySQL:按多列分组时选择第一行或最后一行

来自分类Dev

MySQL Count Distinct值多列同一行

来自分类Dev

创建一个mySQL视图,其中每一行是同一行中特定列的值

来自分类Dev

如何从mysql中的同一行引用一个值?

来自分类Dev

MySQL:使用同一行中的列值进行计数

来自分类Dev

按列值将数组中的mysql行分组

来自分类Dev

根据该行中的列的值按比例将数字除以每一行 MySQL PHP

来自分类Dev

MySQL:将 id 分组并在单独的列上显示不同的值

来自分类Dev

在MySQL中,如何在更新同一行中的另一列时自动为该列设置值?

来自分类Dev

mysql-我可以从同一列中选择值并在2列结果中显示它们吗?

来自分类Dev

如何从mysql的同一列中选择不同的值

来自分类Dev

mysql在多个列中按值分组

来自分类Dev

如何在MYSQL中为单个ID计算同一列中记录的不同值

来自分类Dev

如何在MYSQL中为单个ID计算同一列中记录的不同值

来自分类Dev

MYSQL将列值乘上一行中的值

来自分类Dev

在mysql中按一列分组

来自分类Dev

如何在 MySQL 中获取同一列的两个不同值

来自分类Dev

MySQL如何更新所有行的列,并为每一行更新不同的列值

来自分类Dev

MySQL-按同一表格的多列分组

来自分类Dev

如何使用另一列获取值并在MySQL或SQL中获得每一行之间的差异?

来自分类Dev

如何为mysql表的新列中的每一行生成唯一值?

来自分类Dev

如何在一行中显示MySQL的列以及每个项目的计数器

Related 相关文章

  1. 1

    如何检查MySQL中同一行的多个值?

  2. 2

    如何在MySQL表中为同一行的两列插入值

  3. 3

    复制行并在同一表中插入一个不同值的MySQL字段

  4. 4

    MySQL 在同一行中选择不同的值

  5. 5

    mysql选择获取同一结果行中按列分组的行

  6. 6

    MySQL的同一行不同的列引用(ifnull检查)

  7. 7

    mysql总和与按不同列值分组

  8. 8

    MySQL:按多列分组时选择第一行或最后一行

  9. 9

    MySQL Count Distinct值多列同一行

  10. 10

    创建一个mySQL视图,其中每一行是同一行中特定列的值

  11. 11

    如何从mysql中的同一行引用一个值?

  12. 12

    MySQL:使用同一行中的列值进行计数

  13. 13

    按列值将数组中的mysql行分组

  14. 14

    根据该行中的列的值按比例将数字除以每一行 MySQL PHP

  15. 15

    MySQL:将 id 分组并在单独的列上显示不同的值

  16. 16

    在MySQL中,如何在更新同一行中的另一列时自动为该列设置值?

  17. 17

    mysql-我可以从同一列中选择值并在2列结果中显示它们吗?

  18. 18

    如何从mysql的同一列中选择不同的值

  19. 19

    mysql在多个列中按值分组

  20. 20

    如何在MYSQL中为单个ID计算同一列中记录的不同值

  21. 21

    如何在MYSQL中为单个ID计算同一列中记录的不同值

  22. 22

    MYSQL将列值乘上一行中的值

  23. 23

    在mysql中按一列分组

  24. 24

    如何在 MySQL 中获取同一列的两个不同值

  25. 25

    MySQL如何更新所有行的列,并为每一行更新不同的列值

  26. 26

    MySQL-按同一表格的多列分组

  27. 27

    如何使用另一列获取值并在MySQL或SQL中获得每一行之间的差异?

  28. 28

    如何为mysql表的新列中的每一行生成唯一值?

  29. 29

    如何在一行中显示MySQL的列以及每个项目的计数器

热门标签

归档