我有三张table:formulario,viaverde和reparacoes。其中一个字段在所有表中是相等的,称为matricula,我试图将每个算术运算分组到它。但我一直得到matricula的错误是不明确的或synthax错误,我如何才能实现这一点?
下面的代码:
JOIN (
SELECT matricula, (total)/(kmsTotais) AS custoKM
FROM (
SELECT matricula, SUM(kmfim - quilometragem) AS kmsTotais
FROM formulario
GROUP BY matricula
) e
JOIN (
SELECT matricula, abastecimento_euros as total FROM formulario
UNION ALL
SELECT matricula, custo as total FROM viaverde
UNION ALL
SELECT matricula, valor as total FROM reparacoes
) as subquery
GROUP BY matricula
) i ON i.matricula = f.matricula
1条答案
按热度按时间kqlmhetl1#
您需要用表别名限定
matricula
以使其明确。您也可以将
ON e.matricula = subquery.matricula
替换为USING (matricula)
,因为这表示两个表中的列名相同,所以不需要限定该列。