CREATE OR REPLACE PROCEDURE 
    Sales             
BEGIN
    SELECT 
        c.name AS city_name,
        SUM( s.value ) AS sales_total
    FROM
        city c
    LEFT OUTER JOIN
        sales s
    ON
    (
        c.id = s.city_id                         -- поле "id" слева, эти значения всегда существуют
        AND
        s.day >= DATE_SUB( NOW(),                -- условие перед группировкой ("join condition")
                           INTERVAL 1 MONTH ) 
    )
    GROUP BY
        c.id                                     -- группировка по номерам и названиям городов
    ORDER BY
        c.name                                   -- упорядочить по названиям городов, "A..Z"
    ;
END