Php 在mysql中求两列之和
我想要此表的结果集:Php 在mysql中求两列之和,php,mysql,Php,Mysql,我想要此表的结果集: ID Number_of_posts Number_of_user 1 100 21 2 23 34 作为 在mysql中,是否可以将两列之和作为另一列/输出 SELECT SUM(Number_of_posts), SUM(Number_of_user) FROM table; (编辑:最初没有注意到这是最后一列中的总数。) (编辑:最初没有注意到它是最后一列中的总计。)要获取交叉表总计(水平和垂
ID Number_of_posts Number_of_user
1 100 21
2 23 34
作为
在mysql中,是否可以将两列之和作为另一列/输出
SELECT SUM(Number_of_posts), SUM(Number_of_user) FROM table;
(编辑:最初没有注意到这是最后一列中的总数。)
(编辑:最初没有注意到它是最后一列中的总计。)要获取交叉表总计(水平和垂直):
这将为您提供:
id p u p_and_u
----- --- --- -------
1 100 21 121
2 23 34 57
99999 123 55 178
要获取交叉表总计(水平和垂直),请执行以下操作:
这将为您提供:
id p u p_and_u
----- --- --- -------
1 100 21 121
2 23 34 57
99999 123 55 178
MySQL支持汇总吗
SELECT id,
SUM(Number_of_posts) Number_of_posts,
SUM(Number_of_user) Number_of_user,
SUM(Number_of_posts) + SUM(Number_of_user) Number_of_posts_AND_Number_of_user
FROM table
GROUP BY ROLLUP(id)
编辑:基于快速搜索,在MySQL中,最后一行可能是带有ROLLUP的
分组id
MySQL支持ROLLUP吗
SELECT id,
SUM(Number_of_posts) Number_of_posts,
SUM(Number_of_user) Number_of_user,
SUM(Number_of_posts) + SUM(Number_of_user) Number_of_posts_AND_Number_of_user
FROM table
GROUP BY ROLLUP(id)
编辑:基于快速搜索,在MySQL中,最后一行可能是带有汇总的
按id分组
您不必要地使查询复杂化,并且需要使用更多内存。在一个查询中提取记录,然后进行另一个查询以获取聚合
我知道这不能回答你的问题,但这是你应该做的 您不必要地使查询复杂化,并使用了您必须使用的更多内存。在一个查询中提取记录,然后进行另一个查询以获取聚合
我知道这不能回答你的问题,但这是你应该做的 这就是每一行整张桌子的总数,我认为这不是他们想要的。@Dave:事实上,我认为这是OP的要求wants@Dave:您能看下表决前提供的@op样本记录集吗?它给出了每行整张表的总数,我不认为这是他们想要的。@Dave:事实上,我认为这就是OPwants@Dave:你能看下表决前@op提供的示例记录集吗?这将返回第三个sum记录,而不是表。这将返回第三个sum记录,而不是表。这是一个非常有趣的查询,但我觉得这不是OP想要的。这就是为什么我在问题评论中要求澄清。在每一行上都有完整的总数是没有意义的,因为它不是键(ID)的属性。非常感谢,我没有预料到这个结果,但这可能是我想要的。这是一个非常有趣的查询,但我感觉这不是OP想要的。这就是为什么我在问题评论中要求澄清。在每一行上都有完整的总数是没有意义的,因为它不是键(ID)的属性。非常感谢,我没有预料到这个结果,但这可能是我想要的。你能验证你想要每一行上的完整总数(178178)或每一行上的每个ID(121,57)吗?前者似乎是错的,因为它与身份证没有任何关系。是的,我知道了。我要说的是,178数字不是ID的属性。将其放在底部的to totals行中,并基于每一行的总计,这将更有意义。我在回答我认为OP想问的问题。如果结果证明我错了,那么c'est la vie:-)你能验证你想要每行的全部总数(178178)或每行的每个ID(121,57)吗?前者似乎是错的,因为它与身份证没有任何关系。是的,我知道了。我要说的是,178数字不是ID的属性。将其放在底部的to totals行中,并基于每一行的总计,这将更有意义。我在回答我认为OP想问的问题。如果结果证明我错了,那就是生活:-)
SELECT id, number_of_posts, number_of_user,
(
SELECT SUM(number_of_posts + number_of_user)
FROM mytable
)
FROM mytable
SELECT id,
SUM(Number_of_posts) Number_of_posts,
SUM(Number_of_user) Number_of_user,
SUM(Number_of_posts) + SUM(Number_of_user) Number_of_posts_AND_Number_of_user
FROM table
GROUP BY ROLLUP(id)