mysql - 如何在单个 sql 中对两个单元格进行分组

标签 mysql sql

这是我的简短片段:

select * from tbl_test

enter image description here

我想做的是:

1.

select g_size, sum(g_num)
from tbl_test
group by g_size

2.

select m_size, sum(m_num)
from tbl_test
group by m_size

这是我的问题,如何将所有这些东西推送到一个 sql 字符串中? 可以这样做吗?

最佳答案

如果你想要单行用于 eigher 单个 g_size 或 m_size 那么你不能在单个 sql 中做,但是如果你可以为第一组按字段有多行那么你可以做 -

例如,如果您还有一行 g_size=5, g_num=1, m_size=2, m_num=1 并且您使用以下查询-

select g_size, sum(g_num),m_size, sum(m_num) 
from mytable 
group by g_size,by m_size;

然后您将获得 2 行 g_size=5,如下所示-

g_size= 5, sum(g_num)=5, m_size=1, sum(m_num)=30 和 g_size= 5, sum(g_num)=1, m_size=2, sum(m_num)=1

此外,您可以使用汇总功能,该功能将首先提供小计(m_size 明智),然后是总计(g_size 明智),最后提供总计(所有 m_size 总计)。

关于mysql - 如何在单个 sql 中对两个单元格进行分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32733308/

相关文章:

php - 如何使用 php 显示来自 mysql DB 的图像?

php - 使用 PHP distinct 从 mysql 中获取所有唯一数据

mysql - SQL 嵌套 CASE WHEN 语句

mysql - 生成范围内的数字——SQL

php - 将列移动到 mysql 中的新表中

php - 如何在 mySQL 中的 EXECUTE 语句之后获取语句的结果?

mysql转储: Can you change the name of the table you're inserting into?

mysql - mysql中的Group By设置值

java - SQLite 和 SELECT Total(value) 的性能问题

c# - 如何优化 linq 中将 ~4000 行转换到对象的 "select all"语句?