如何在mysql中从3个不同的表3字段求和

nkkqxpd9  于 2023-01-20  发布在  Mysql
关注(0)|答案(1)|浏览(223)

我想总结3个不同的表列,在mysql中,并提出总的由matricula分组,但我已经作出的查询没有做我预期的,因为他们,执行,但产生错误的总和结果.任何帮助是非常感谢.表结构如下:

    • 表**:公式

| 入学考试|防腐剂欧元|
| - ------|- ------|
| AS-KT-DT系列|十个|
| 捷克-乌迪-NP|二十个|

    • 表**:维阿维尔德

| 入学考试|海关|
| - ------|- ------|
| AS-KT-DT系列|三十|
| AS-KT-DT系列|六十|
| 捷克-乌迪-NP|五十|

    • 表**:修复

| 入学考试|英勇|
| - ------|- ------|
| 捷克-乌迪-NP|二十个|
| AS-KT-DT系列|五百|
数据类型:十进制(5,2),用于表示abastecimento_euros、custo、valor;和录取3表是varchar类型.查询我已经尝试是总和(abastecimento_欧元+custo + valor)并给出由录取分组.
查询尝试一:

SELECT `formulario`.`matricula`, sum(`abastecimento_euros`+`custo`+`valor`) as total
  FROM `formulario`
  INNER JOIN `reparacoes`
  ON `formulario`.`matricula` = `reparacoes`.`matricula`
  INNER JOIN `viaverde`
  ON `reparacoes`.`matricula` = `viaverde`.`matricula` 
  GROUP BY `formulario`.`matricula`

查询尝试2

SELECT f.matricula, sum(vv.custo + f.abastecimento_euros + r.valor) as total
from formulario f JOIN reparacoes r on r.matricula = f.matricula
JOIN viaverde vv on vv.matricula = f.matricula
GROUP BY f.matricula

我尝试使用synthax的多种组合,包括尝试在十进制模式下求和,使用distinct,以及我所描述的查询,我期望结果是准确的,但求和,不准确,导致这个疑问,我想看看堆栈溢出是否可以帮助我解决.亲切的问候

3htmauhk

3htmauhk1#

您会尝试不使用sum吗?:

SELECT `formulario`.`matricula`, `abastecimento_euros`+`custo`+`valor`as total
  FROM `formulario`
  INNER JOIN `reparacoes`
  ON `formulario`.`matricula` = `reparacoes`.`matricula`
  INNER JOIN `viaverde`
  ON `reparacoes`.`matricula` = `viaverde`.`matricula`

相关问题