• Now working, thank you.

    SELECT Coalesce( sGIG, 'Tot' ) as sGIG, Sum(Number) as Num

    FROM (

    SELECT LEFT (idDGIG, 2) AS sGIG, COUNT(idDGIG) AS NUMBER

    FROM TABLE_LONG

    WHERE

    LEFT (idDGIG, 2) IN ('QM', 'QI', 'QO', 'QS')

    AND DATE_START = DATE_ADD(CURDATE(), INTERVAL - 1 DAY)

    GROUP BY sGIG

    UNION ALL

    SELECT LEFT (idDGIG, 2) AS sGIG, COUNT(idDGIG) AS NUMBER

    FROM TABLE_SHORT

    WHERE

    LEFT (idDGIG, 2) IN ('QM', 'QI', 'QO', 'QS')

    AND DATE_START = DATE_ADD(CURDATE(), INTERVAL - 1 DAY)

    GROUP BY sGIG

    ) AS sums

    Group by sGIG WITH ROLLUP;

    +--------+--------+

    | sGIG | NUMBER |

    +--------+--------+

    | QI | 11 |

    | QM | 4 |

    | QO | 22 |

    | QS | 11 |

    | Tot | 48 |

    +--------+--------+