У меня есть недостаток с консультацией в MySQL и мне не удается понять, что у меня есть зло, я объясняю им, чтобы видеть, не ли вижу я что-то или мне надо немного. У меня есть таблица MySQL с полями стоимости в месяце в месяц, год за годом из-за каждого клиента. Я хочу иметь sumatoria каждого клиента колонны стоимости по отношению к лезвию года и в месяце X, а именно, требую накопленный до этой даты, у меня есть следующее:
SELECT dlin_codcli, dlin_anoliq, dlin_mesliq, SUM(IFNULL(dlin_valint, 0)) AS dlin_valint
FROM coo_detintaportes
WHERE dlin_codcli = '32861467'
AND dlin_anoliq <= 2019
AND dlin_mesliq <= 1
В teroria он был бы должен выходить sumatoria dlin_valint с января 2019 назад, итак, только показывает мне январскую стоимость и не, почему оно происходит. Если я снимаю фильтр месяца консультации да, он дает мне хорошо, но дает мне стоимость до сегодняшнего дня, костлявая, марта: что будет?
То, за чем оно последует, что estГЎs обусловливая плохо месяц. Несмотря на то, что ты помещаешь < = 2019, "and" показывает, что они только были январскими несовершеннолетними, поэтому только идет в conciderar они aГ±os предыдущие 2019, но только Ваш январь. Измени ты condiciГіn следующую форму:
SELECT dlin_codcli, dlin_anoliq, dlin_mesliq, SUM(IFNULL(dlin_valint, 0)) AS dlin_valint
FROM coo_detintaportes
WHERE dlin_codcli = '32861467'
AND (dlin_anoliq < 2019 -- menores al año 2019.
or dlin_mesliq = 1) -- si es el 2019, sólo concidere el mes de enero.
Я понимаю, что то, что ты хочешь, является суммой всех они aГ±os предыдущие 2019 (не имея значение месяц), и если aГ±o это - 2019 тогда только считать январь. Следовательно консультация должна отражать это...
Она soluciГіn podrГ, - чтобы быть asГ-:
SELECT dlin_codcli, dlin_anoliq, dlin_mesliq, SUM(IFNULL(dlin_valint, 0)) AS dlin_valint
FROM coo_detintaportes
WHERE dlin_codcli = '32861467'
AND (dlin_anoliq < 2019 OR (dlin_anoliq = 2019 AND dlin_mesliq <= 1))