首页 >数据库 >mysql教程 >MySQL中ROLLUP的替代方法

MySQL中ROLLUP的替代方法

WBOY
WBOY原创
2016-06-07 15:19:561474浏览

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 今天从MySQL中提取数据,使用ROLLUP统计后,想在数据左边列中加入项目名称,使用SQL Sql代码 SELECT (CASE WHEN ISNULL(PLAYERNO) THEN PLAYERNO=TOTAL ELSE PLAYERNO END) AS PLAYERNO,SUM(AMO

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

  今天从MySQL中提取数据,使用ROLLUP统计后,想在数据左边列中加入项目名称,使用SQL

  Sql代码

  SELECT (CASE WHEN ISNULL(PLAYERNO) THEN PLAYERNO=TOTAL ELSE PLAYERNO END) AS PLAYERNO,SUM(AMOUNT) FROM penalties

  GROUP BY PLAYERNO WITH ROLLUP

  结果是:

  这样

  +----------+-------------+

  | PLAYERNO | SUM(AMOUNT) |

  +----------+-------------+

  |        6   |      100.00 |

  |        8   |        25.00 |

  |       27  |      175.00 |

  |       44  |      130.00 |

  |      104 |        50.00 |

  |     NULL|      480.00 |

  +----------+-------------+

  6 rows in set, 1 warning (0.00 sec)

  显示为空值,修改如下:

  Sql代码

  SELECT PLAYERNO,SUM(AMOUNT) FROM penalties

  GROUP BY PLAYERNO

  UNION

  SELECT TOTAL,SUM(AMOUNT)

  FROM penalties

  显示结果:

  +----------+-------------+

  | PLAYERNO | SUM(AMOUNT) |

  +----------+-------------+

  | 6          |      100.00 |

  | 8          |        25.00 |

  | 27        |      175.00 |

  | 44        |      130.00 |

  | 104      |        50.00 |

  | TOTAL  |      480.00 |

  +----------+-------------+

  6 rows in set (0.00 sec)

MySQL中ROLLUP的替代方法

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn