【问题标题】:MYSQL summing values of multiple tablesMYSQL多表求和值
【发布时间】:2016-02-14 22:18:05
【问题描述】:

我有多个表,我可以在我的网站上列出它们的行。

我想要的是最后一列具有相同值的地方,我想将行值相加并列为一行。

我有什么:

Hioss
AUR
Top
1
1
0
Shen

Hioss
AUR
Top
1
1
0
Shen

Kanani
AUR
Jungle
1
1
0
Reksai

我不想得到这样的数据。 如果最后一列具有相同的值(Shen),我想对 int 值求和并在我的网站上显示为一行。

我想做什么:

Hioss
AUR
Top
2
2
0
Shen

Kanani
AUR
Jungle
1
1
0
Reksai

我的mysql查询:

mysql_query("SELECT * FROM table1 UNION SELECT * FROM table2"); 

我该怎么做?我该怎么办?

【问题讨论】:

  • 您可以将UNION 查询包装在对它们进行分组/求和的外部查询中,即。 SELECT col1, col2, col3, SUM(col4), SUM(col5), col6 FROM (SELECT * FROM table1 UNION SELECT * FROM table2) a GROUP BY col6(注意col1-col6 只是示例,因为您没有给出明确的列名)
  • 所有值都列为 0 0 0 0 00 0 :/
  • @Sean col1 col2 col3s 正在工作,但 sum(colx) 不工作 ints 列为 0 0 0 0 其他是正常的
  • 我在 "sum(x)"s 之后添加了 "as x"s ,谢谢!

标签: php mysql sum


【解决方案1】:

试试这个。我不知道字段名。你必须改变它

SELECT fieldnam1,fieldnam2, sum(fieldnam3),fieldnam4
FROM (
    SELECT * FROM table1 
    UNION 
    SELECT * FROM table2
) as result
GROUP by fieldnam4;

【讨论】:

  • mysql_query("SELECT player,takim, sum(oynananoyun),sum(win),sum(输),sum(kill),sum(death),sum(assist),sum( cs),sum(gold),sum(goldshare),sum(gpm),sum(egpm),sum(fb),sum(dmg),sum(dmgshare),sum(dpm),sum(wardplaced),sum( wardcleared),sum(wardplacedpm),sum(wardclearedpm),sum(wardplacedshare),sum(wardclearedshare),sum(cspm),sum(dakika),sum(saniye),sum(kp),sum(deathpercentage) FROM ( SELECT * tclhafta1mac1 UNION SELECT * FROM tclhafta1mac2 ) 作为结果 GROUP by Champion ");它给出了:在第 2 行使用 'tclhafta1mac1 UNION SELECT * FROM tclhafta1mac2 ) 作为结果 GROUP by Champion 的正确语法
  • 我错过了“来自”我添加了它,但它仍然不起作用没有给出错误,但所有值都是 0 0 0 0 0
  • fieldnam1,fieldnam2 工作但 sum(fieldname3) 不工作。整数不工作文本工作:/
  • 我在 "sum(x)"s 之后添加了 "as x"s ,谢谢!
猜你喜欢
  • 2023-04-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-05-12
相关资源
最近更新 更多