группа запросов sql, не работающая в подзапросе

#mysql #sql

Вопрос:

У меня есть sql-запрос, основанный на 2 идентификаторах в одной таблице, результаты суммы получены правильно, но проблема в том, что group by не может обрабатывать данные, которые появляются 2 раза

 SELECT coa_a.debet_april,coa_a.namacoaapril, coa_b.kredit_april ,coa_b.namacoaapril
 FROM `t_jurnalumum` join coa on coa.m_coa_4_id=t_jurnalumum.IdDebet 
 join (select DISTINCT m_coa_4_id, sum(a.Nilai) as debet_april, coa.namacoa as namacoaapril 
        from t_jurnalumum a j
        join coa on a.IdDebet=coa.m_coa_4_id 
        where year (a.Tanggal)=2021 and month (a.Tanggal)=4 
        GROUP by a.IdDebet ) as coa_a on coa_a.m_coa_4_id=t_jurnalumum.IdDebet 
 join (select DISTINCT m_coa_4_id, sum(b.Nilai) as kredit_april, coa.namacoa as namacoaapril 
         from t_jurnalumum b 
         join coa on b.IdKredit=coa.m_coa_4_id 
        where year (b.Tanggal)=2021 and month (b.Tanggal)=4 
        GROUP by b.IdKredit ) as coa_b on coa_b.m_coa_4_id=t_jurnalumum.IdKredit 
 GROUP by coa_b.namacoaapril, coa_a.namacoaapril
 

это и есть результат
вот результат

а это главный стол а это главный стол

Ответ №1:

Это потому, что вы используете одну и ту же таблицу. Первый подзапрос соединения даст вам отличное значение от первой группы по, а вторая группа по дает отличное значение. И в конце вы также сгруппировали весь результат. Первый дает два разных значения, а второй дает два разных значения, которые в конечном итоге дают все значения.

Комментарии:

1. вы можете исправить мой запрос ? или что — то посоветуете, чтобы мой запрос работал правильно ?