MySQL получает процент от года к году за каждый месяц

Я пытаюсь получить тот же результат за последние 12 месяцев и их значения по сравнению с аналогичными месяцами прошлого года и процентной разницей.

ThisYearMonth | ThisYearValue | LastYearMonth | LastYearDifAsPercent
--------------|---------------|---------------|---------------------
Dec 2015 -----|800 -----------|Dec 2014 ------|50 ------------------
Nov 2015 -----|350 -----------|Nov 2014 ------|-23 -----------------

Каждый выбор работает нормально, но в сочетании я получаю

[Err] 1242 - Подзапрос возвращает более 1 строки


SELECT
    DATE_FORMAT(`month`, '%b %Y') AS ThisYearMonth,
    no_customer_growth as ThisYearCustGrowth,
    DATE_FORMAT(DATE_SUB(`month`, INTERVAL 1 YEAR),'%b %Y') AS `LastYearMonth`,
    (
        SELECT
        ROUND((t1.no_customer_growth - t2.no_customer_growth) / t2.no_customer_growth * 100, 2)
        FROM cust_evolution AS t1
        INNER JOIN cust_evolution AS t2
        ON DATE_FORMAT(t1.`month`,'%b') = DATE_FORMAT(t2.`month`,'%b')
        AND DATE_FORMAT(t1.`month`,'%Y') = DATE_FORMAT(t2.`month`,'%Y') - 1
    ) AS `MoM % growth`
FROM cust_evolution

Спасибо за ваше время и поддержку!

0 ответов

Другие вопросы по тегам