我们假设我有下表:
我需要'Shares'
排序的'Company'
列中的数字。
所以,例如:
ABC,INC:88624 + 5588 + 442214 + 11233
DEF公司:4556 + 444863 + 44601
有没有办法使用MySQL做到这一点?或者PHP?
答案 0 :(得分:3)
聚合函数是最好的方法:
SELECT SUM(shares), company
FROM table_name
GROUP BY company
SUM()将对同一公司名称进行必要的计算。 GROUP BY将由公司展示。
如果您不想要特定的公司(仅限2家公司):
您可以添加WHERE Company = "ABC inc" OR "DEF Corp"
答案 1 :(得分:2)
USE GROUP BY
SELECT COMPANY,SUM(SHARES) FROM <TABLE> group by COMPANY;
答案 2 :(得分:2)
SELECT COMPANY,SUM(SHARES) FROM <TABLE> group by COMPANY;
&#13;
答案 3 :(得分:1)
如果要列出所有Shares,可以使用group_concat和group by:
select company, group_concat(SHARES)
from my_table
group by company
如果您想要分享总和,请使用:
select company, sum(SHARES)
from my_table
group by company
答案 4 :(得分:1)
使用下面提到的查询
select COMPANY, sum(shares) from table_name group by COMPANY ;
如果您不想要总和,只需要显示,请使用:
select COMPANY, GROUP_CONCAT( shares SEPARATOR '+' )from
table_name group by COMPANY
答案 5 :(得分:1)
你可以在sql中使用聚合函数 SUM()
select COMPANY,SUM(SHARES)
from ur_table
group by COMPANY
答案 6 :(得分:1)
如果您想要总和,请使用sum()
。如果您需要列表,请使用group_concat()
:
select company,
sum(shares) as sum_shares,
group_concat(shares separator '+') as list_shares
from t
group by company;
separator
关键字允许您输入+
。
答案 7 :(得分:1)
使用此query
选择公司,SUM(股份) 来自table_name 按公司分组