powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / К null прибавить чило и не получить NULL
9 сообщений из 9, страница 1 из 1
К null прибавить чило и не получить NULL
    #33358989
panu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ASA 8.0.2 (4308)
Господа и дамы, туплю я, мне кажется. но тем не менее:
как ссумировать вычисленные значения нескольких колонок в одной строке
CutSquare + RestSquare + StockSquare = null, если хоть один из операндов ничему не равен.
как это обходится, ткните носом пожалуйста!!!
...
Рейтинг: 0 / 0
К null прибавить чило и не получить NULL
    #33358991
Фотография VirusXP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нужно впаять условие. в NS SQL это выглядит так
Код: plaintext
1.
2.
3.
4.
select (case when v1 is null or v2 is null or v3 is null then null
                  else v1 + v2 + v3
          end) as v
from.....
посмотри что нибудь подобное в help'е
...
Рейтинг: 0 / 0
К null прибавить чило и не получить NULL
    #33358993
JNA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JNA
Гость
Select coalesce(field1, 0) + field2
...
Рейтинг: 0 / 0
К null прибавить чило и не получить NULL
    #33358994
Фотография VirusXP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JNASelect coalesce(field1, 0) + field2
не угадали ни одной буквы!!! :-P
...
Рейтинг: 0 / 0
К null прибавить чило и не получить NULL
    #33359006
golsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
isnull(CutSquare, 0)+isnull(RestSquare, 0)+isnull(StockSquare, 0)
...
Рейтинг: 0 / 0
К null прибавить чило и не получить NULL
    #33359640
Фотография Александр Гoлдун
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
golsa пишет:
> isnull(CutSquare, 0)+isnull(RestSquare, 0)+isnull(StockSquare, 0)

Лучше уж сразу вместо ISNULL использовать COALESCE. Работает точно так
же, но ISNULL - это функция Transact SQL, а COALESCE - из стандартов
ANSI SQL 92-99
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
К null прибавить чило и не получить NULL
    #33360967
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Александр ГoлдунЛучше уж сразу вместо ISNULL использовать COALESCE. Работает точно так же, но ISNULL - это функция Transact SQL, а COALESCE - из стандартов ANSI SQL 92-99

В ASA ISNULL и COALESCE вообще полные аналоги.
Лично я всегда использую isnull потому что в нем букв меньше, писать быстрее :) В WatcomSQL работает без малейших проблем. А по стандартам вот:
BOL Standards and compatibility ISNULL
SQL/92 Transact-SQL extension.
SQL/99 Vendor extension.
Sybase Compatible with Adaptive Server Enterprise, except that Adaptive Server Enterprise allows only two expressions.

COALESCE
SQL/92 SQL/92.
SQL/99 Core feature.
Sybase Compatible with Adaptive Server Enterprise.
...
Рейтинг: 0 / 0
К null прибавить чило и не получить NULL
    #33361018
panu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дамы и господа!
большое спасибо всем за участие. помогло, стал немного умнее! ;-))
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
К null прибавить чило и не получить NULL
    #35838550
Misha_LV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
При использовании COALESCE или ISNULL ,переменная со значением double округляется до 6 знаков,как быть?Используется версия 5.5 ,функция хранимая.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / К null прибавить чило и не получить NULL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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