Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
16.02.2017, 10:23
|
|||
---|---|---|---|
Помогите разобраться с SUM |
|||
#18+
В программе была ошибка с отчетами (неправильно могли начисляться суммы). Программу исправили и теперь чтобы найти разницу и откорректировать суммы (доплатить/снять): 1. беру старые данные начислений, суммирую по столбцам с суммами (sm1-8) чтобы по ключевым полям CODE, NUMB, RASH получить 1 строчку. 2. Тоже само что и в п.1, только с новыми данными. 3. После этого отнимаю один список от другого. В целом все ХОРОШО, но вот есть одна загвоздка которую не могу решить. По какой-то причине в результате я получаю 1956 строк, которые попарно сначала сумма +, а потом -. В сумме оно дает 0,00. Не могу избавиться от этого. Что неправильно делаю? Исходные данные: Таблица со старыми данными начислений (которые формировались ежемесячно): Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
Таблица с новыми данными начислений (переформированные данные помесячно после исправления ошибки): Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
Выполняю запрос на суммирование: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Получаю такой результат: Код: sql 1. 2. 3.
Почему получается 2 строчки. Думал может пробел в поле RASH (Хотя по командам INSERT уже видно что его нет). Прогнал обе таблицы trim(rash). Результат не изменился. Попробовал сделать индекс на обе таблицы: CREATE INDEX IDX_RJ_NEW_RAX ON RJ_NEW (CODE, NUMB, RASH); CREATE INDEX IDX_RJ_OLD_RAX ON RJ_OLD (CODE, NUMB, RASH); Результат не изменился. Исходные таблицы содержат много данных (по 5млн. строк каждая), решил повторить только на описанных выше примерах - результат не изменился: при суммировании получаю в результат 2 строчки. -------------------------- Firebird 3.0.1.32609; IBExpert 2017.2.7.1; Windows 10 32-bit; 4Gb RAM; SSD 512Mb + HDD 1 Tb; Настройки по умолчанию ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.02.2017, 10:33
|
|||
---|---|---|---|
|
|||
Помогите разобраться с SUM |
|||
#18+
Не пойму вопрос. group by code, numb, rash как раз и выбирает уникальные комбинации code, numb, rash. В примере code, numb одинаковы, а rash имеет два разных значения. Итого - две строки. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.02.2017, 10:38
|
|||
---|---|---|---|
|
|||
Помогите разобраться с SUM |
|||
#18+
akrush, воспроизвёл. Походу эта бага при сортировки строк. Воспроизводится даже так Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
в трекер иди. Воспроизводимый пример у тебя есть ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.02.2017, 10:39
|
|||
---|---|---|---|
Помогите разобраться с SUM |
|||
#18+
Симонов ДенисвоспроизвёлДа ну ? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.02.2017, 10:40
|
|||
---|---|---|---|
Помогите разобраться с SUM |
|||
#18+
Sia-Ori1, Все вы правы. Извините не заметил изменения 8-6-8 Почти одинаковые. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.02.2017, 10:41
|
|||
---|---|---|---|
Помогите разобраться с SUM |
|||
#18+
akrush, ВСЕМ СПАСИБО ЧТО ОТКЛИКНУЛИСЬ. ТАМ ДЕЙСТВИТЕЛЬНО В 2 ПОСЛЕДНИХ СТРОЧКАХ ДРУГОЙ RASH. ВОПРОС СНЯТ. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.02.2017, 10:41
|
|||
---|---|---|---|
|
|||
Помогите разобраться с SUM |
|||
#18+
akrush, тьфу блин. Что ты мне голову морочишь, ещё и строки похожие подобрал Где тут смайл с головой бьющейся о стену? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.02.2017, 10:42
|
|||
---|---|---|---|
|
|||
Помогите разобраться с SUM |
|||
#18+
извиняюсь, сам несколько раз смотрел пытался разные символы в строках разглядеть да всё мимо ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=40&mobile=1&tid=1561710]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
60ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
others: | 300ms |
total: | 454ms |
0 / 0 |