:: Visual Foxpro, Foxpro for DOS
.NULL.
Rebel Yell
Автор
SELECT * FROM rss WHERE id_cl =2 AND MONTH(ddate)=1 AND year(ddate)=2003 ;
INTO CURSOR ааа

SELECT SUM(nLong) FROM q ;
into cursor bbb

В 8.0 второй курсор (bbb) если в первом в выборку ничего не попадет (_TALLY<0) , также не будет строк.
А вот в 9.0 в bbb попадет строка со значением .NULL. что очень не удобно, так как все потом
отслеживаю через _TALLY. можно както вернуть или переписывать надо?

p.s. сори за корявое объяснение проблемы
Ratings: 0 negative/0 positive
Re: .NULL.
Rebel Yell
Автор
SELECT * FROM rss WHERE id_cl =2 AND MONTH(ddate)=1 AND year(ddate)=2003 ;
INTO CURSOR ааа

SELECT SUM(nLong) FROM ааа;
into cursor bbb

В 8.0 второй курсор (bbb) если в первом в выборку ничего не попадет (_TALLY<0) , также не будет строк.
А вот в 9.0 в bbb попадет строка со значением .NULL. что очень не удобно, так как все потом
отслеживаю через _TALLY. можно както вернуть или переписывать надо?

p.s. сори за корявое объяснение проблемы
p.p.s. в первом посте не правильно указал имя курсора, исправил
Ratings: 0 negative/0 positive
Re: .NULL.
Владимир Максимов

Сообщений: 14095
Откуда: Москва
Дата регистрации: 02.09.2000
Такое поведение можно изменить при помощи настройки

SET ENGINEBEHAVIOR

Это не глюк. Это более "правильное" поведение с точки зрения стандарта SQL. Это подробно описано в HELP к этой настройке для значения 90




------------------
Ratings: 0 negative/0 positive
Re: .NULL.
Владимир Максимов

Сообщений: 14095
Откуда: Москва
Дата регистрации: 02.09.2000
Да, еще можно сделать фиктивную группировку, если хочешь не зависеть от настройки SET ENGINEBEHAVIOR примерно так:

create cursor test (testID I)
select 1 as num, sum(testID) from test GROUP BY num

Здесь группировка по константе.




------------------
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 12 anelsasha  (Гостей: 11)

© 2000-2024 Fox Club 
Яндекс.Метрика