CREATE OR REPLACE PROCEDURE 
    Frequency
BEGIN
    SELECT
        n.name AS person_name,
        COUNT( self_join_n.* ) AS word_counter
    FROM
        name n
    LEFT INNER JOIN 
        name self_join_n                         -- таблица будет соединена сама с собой ("self join")
    ON
        n.name = self_join_n.name                -- поле из первой таблицы слева, всё остальное справа
    AND
        n.id <> self_join_n.id                   -- исключить строки, полученные из-за пересечения таблиц
    GROUP BY
        n.name                                   -- группировка по имени из первой таблицы
    ORDER BY
        n.name ASC                               -- упорядочить по именам "A..Z"
    ;
END