Проблема подзапроса при попытке найти количество событий, происходящих в данном месяце, происходит чаще, чем в предыдущем месяце - PullRequest
1 голос
/ 02 мая 2020

Мой запрос выглядит следующим образом:

select challenges_unique_acronym from presents where
 (select count(month(MonthA.present_date)) from presents as MonthA group by month(MonthA.present_date)) 
 > 
 (select count(month(MonthA.present_date) - 1) from presents as MonthA group by month(MonthA.present_date));

(count(month(MonthA.present_date))) from presents as MonthA group by month(MonthA.present_date); возвращает число раз, когда появляется месяц, когда каждый отдельный месяц находится в отдельной строке , например, , но так как они Я нахожусь в нескольких строках. Я получаю вещь «подзапрос возвращает более 1 строки», которая мешает мне приравнять их.

Есть ли способ, которым я могу сказать mysql "Для каждой строки проверьте:

(выберите количество (месяц (MonthA.present_date)) из представленных как группа MonthA по месяцам (MonthA.present_date))

больше

(выберите количество (месяц (MonthA) .present_date) - 1) из подарков как группа MonthA по месяцам (MonthA.present_date)); "

1 Ответ

0 голосов
/ 02 мая 2020

Вы можете попробовать использовать hìjoin с подзапросом

    select presents.challenges_unique_acronym 
    from presents 
    INNER JOIN  (
        select month(MonthA.present_date) month, count(month(MonthA.present_date)) count
        from presents as MonthA 
        group by month(MonthA.present_date)
        ) t1 ON t1.month = month(presents.present_date)
    INNER JOIN  (
        select month(MonthA.present_date) month, count(month(MonthA.present_date) - 1) count
       from presents as MonthA 
       group by month(MonthA.present_date) 

    ) t2 ON t1.month = t2.month 
        AND t1.count > t2.count; -- adding this comment to make the eddit 6 characters
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...