查询以返回特定表列中的所有值

时间:2014-10-16 17:12:13

标签: sql tsql

下面的查询会返回当年所有群体的故事。

如何返回IND_GRUPO中存在但按月分组的所有组,如果当前月份的组不存在,则应显示该名称,但是该组织将为0。所有联接应该是保持。

SELECT SUM(p.valor), c.nm_grupo, c.cd_grupo, YEAR(p.dt_emissao)
FROM ind_receita p
JOIN ind_equipto o ON p.cd_equipto = o.cd_equipto
JOIN ind_grupo c ON o.cd_grupo = c.cd_grupo
WHERE YEAR(p.dt_emissao) = YEAR(GETDATE())
GROUP BY YEAR(p.dt_emissao), c.nm_grupo, c.cd_grupo
ORDER BY 1 DESC

1 个答案:

答案 0 :(得分:0)

试试这个:

SELECT c.nm_grupo, c.cd_grupo, YEAR(GETDATE()),
    (SELECT SUM(p.valor)
    FROM ind_receita p
    JOIN ind_equipto o ON p.cd_equipto = o.cd_equipto
    JOIN ind_grupo c2 ON o.cd_grupo = c2.cd_grupo
    WHERE c2.cd_grupo = c.cd_grupo
    AND YEAR(p.dt_emissao) = YEAR(GETDATE())) AS valor
FROM ind_grupo c