Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

sum(x)= - 6.67761414550082E153, а должно быть 0! [D6, dBase, FoxPro]


Walentina ©   (2005-02-21 22:55:00) 

В запросе SELECT SUM(X) FROM TABLE WHERE KOD<9 результат получается - 6.67761414550082E153, хотя должен быть=0, т.к. строк, удовлетворяющих этому условию нет. Как с этим бороться?


Walentina   (2005-02-22 17:28:00) [1]

Вроде разобрались в чем дело:
Пока стоял родной BDE 5.01 - все было нормально. Фигня эта пошла после того, как инсталлировали программу, которая свой BDE ставит (5.01.22).  Теперь проблема - как уживаться двум программам... Новая программа вроде бы и под старым BDE работает (или делает вид, что работает), но кто его знает, как оно дальше будет.


}|{yk   (2005-02-22 16:49:00) [2]

я всегда теперь пишу такого типа
select nvl(sum(z),0) from aaa
или
select coalesce(sum(z),0) from aaa
не помешает


Digitman   (2005-02-22 16:46:00) [3]


> Danilka ©   (22.02.05 09:31) [7]


мусор она и получает


sniknik   (2005-02-22 11:42:00) [4]

> ну так мусор она и получает.
а должно бы null
(и должно и получает) проверь сам, в SQL Explorer в алиасе DBDEMOS запрос
SELECT SUM(a."Size") FROM animals a WHERE Weight < 2
(просто у всех есть, и база и таблица)
у меня к примеру там пустое поле (null), если у него другое, то и обьяснение какоето другое... (например условие всетаки правдивое...)

Walentina
проверь так в SQL Explorer-е
SELECT SUM(X) FROM TABLE WHERE 1=2
(если результат тот же, то чтото у тебя с BDE или драйвером который используеш (я предполагал Native драйвер))


Val   (2005-02-22 11:04:00) [5]

ну так мусор она и получает.


Danilka   (2005-02-22 09:31:00) [6]


>  хотя должен быть=0, т.к. строк, удовлетворяющих этому условию
> нет.

Если нет записей удовлетворяющих условию, то запрос должен вернуть не 0, а NULL. По идее. Не знаю как в dBase, FoxPro с этим дела обстоят. Ох, и тяжело-же сегодня думается.


Danilka   (2005-02-22 09:10:00) [7]

Брр, сорри, перепутал счетчик с суммой..


Danilka   (2005-02-22 09:01:00) [8]

[4] Digitman ©   (22.02.05 08:55)
Запрос как-раз содержит всегда 1 запись - количество записей удовлетворяющих условию. :))


Digitman   (2005-02-22 08:55:00) [9]


> Walentina


> должен быть=0, т.к. строк, удовлетворяющих этому условию
> нет

откуда 0-то возьмется или иное значение, если запрошенный тобой НД не содержит ни одной записи ?


Walentina   (2005-02-22 07:29:00) [10]

Пока нигде не могут ответить, в том числе и на SQL.RU.
Доступ через BDE. Запрос отрабатываю из своей программы, но аналогичный результат и из SQLExplorer. Поле Numeric (и с десятичной частью, и с целым полем та же фигня).


Johnmen   (2005-02-21 23:04:00) [11]

На sql.ru не ответили ? :)

Компоненты доступа ? Тип и размерность поля ?


Fay   (2005-02-21 22:58:00) [12]

Не должно


Наверх

Титульная страница Поиск, карта сайта Написать письмо