powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / Paradox. NUMBER и BCD при выполении SQL запроса
1 сообщений из 1, страница 1 из 1
Paradox. NUMBER и BCD при выполении SQL запроса
    #36645664
DaSoundMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть запрос:
Код: plaintext
1.
insert into "table1.DB"(SUMNSTR,SUMPSTR,SUMNNAK,SUMPNAK)
select sum(d.nstr), sum(d.pstr), sum(d.nnak), sum(d.pnak) from "table2.DB" d group by d.numzdn;
Поля SUMNSTR , SUMPSTR , SUMNNAK , SUMPNAK - тип данных BCD с 2 знаками после точки.

Немного поясню суть: table1.DB - сводная таблиц оплат задолженностей. table2.db - оплаты задолженности.
Оплат может быть несколько по одной задолженности, поэтому sum и group by.


При выполнении запроса выдается сообщение "type mismatch in expression". Я так понимаю это потому, что SUM возвращает Number. Поменял тип данных для этих полей на Number, но появилась другая проблема: когда вычитаю из задолженности сумму, то иногда получаю на выходе -0,00, хотя числа равны, что проверяется запросом:
Код: plaintext
... where (ZADSTR=SUMNSTR) and (ZADNAK=SUMNNAK)

Менял тип данных для полей задолженностей на Number, использовал CAST - все равно -0,00 у некоторых разниц.

Правильно только тогда, когда тип данных BCD, но тогда не залить данные в таблицу запросом, а делать каждый раз после заливки данных reconstruct таблицы невозможно.

Не подскажете, что можно сделать?! Может у кого были такие проблемы?
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / Paradox. NUMBER и BCD при выполении SQL запроса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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