powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / SUM
3 сообщений из 3, страница 1 из 1
SUM
    #33170315
_slip_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Люди есть запос, проблемма с SUM, запись в zakaz.koli_izdelii_zak_kl равна 10, если одно поле sklad.kolvo (они объеденяются по ID) которое тоже равно 10 то все ОК, запрос работает как должен, а если много полей skald.kolvo скажем 5 одно поле и 5 другое то SUM не выводит результат 0, а выводит 10!!! почему?? я ни как не могу понять...нам же не нужно их складывать...

Код: plaintext
1.
2.
3.
4.
5.
6.
SELECT zakaz.id, users_data.fio_client, zakaz.izdelie, zakaz.category_izdelie, zakaz.more_data_izdelie, zakaz.koli_izdelii_zak_kl, SUM(zakaz.koli_izdelii_zak_kl-(sklad.kolvo)) SUMM, SUM(sklad.kolvo) totalSklad
FROM zakaz INNER JOIN users_data ON zakaz.username = users_data.user 
LEFT OUTER JOIN sklad ON sklad.id_sklad = zakaz.id 
WHERE zakaz.{$sel} LIKE '%$what%' 
AND users_data.type = 'user'
GROUP BY zakaz.id
HAVING SUMM >  0 
...
Рейтинг: 0 / 0
SUM
    #33170384
_slip_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Решил так:

$query = "SELECT zakaz.id, users_data.fio_client, zakaz.izdelie, zakaz.category_izdelie, zakaz.more_data_izdelie, zakaz.koli_izdelii_zak_kl, (zakaz.koli_izdelii_zak_kl - SUM(IFNULL(sklad.kolvo,0)))SUMM , SUM(sklad.kolvo) totalSklad
FROM zakaz
INNER JOIN users_data ON zakaz.username = users_data.user
LEFT OUTER JOIN sklad ON sklad.id_sklad = zakaz.id
WHERE zakaz.{$sel}
LIKE '%$what%' AND users_data.type = 'user'
GROUP BY zakaz.id
HAVING SUMM > 0
...
Рейтинг: 0 / 0
SUM
    #33170638
Фотография Johnmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_slip_ а если много полей skald.kolvo скажем 5 одно поле и 5 другое то SUM не выводит результат 0, а выводит 10!!! почему?? я ни как не могу понять...

Так всё же элементарно. При соединении в этом случае имеем 2 (две) записи:

Код: plaintext
1.
2.
 zakaz.koli_izdelii_zak_kl     sklad.kolvo 
I  :                   10               5
II :                   10               5

итого 10 - 5 + 10 - 5 = 10, что и имеешь.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / SUM
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]