Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.03;
Скачать: CL | DM;

Вниз

Язык по SQL и может быть по Интербейсу...   Найти похожие ветки 

 
БАА   (2003-02-12 23:40) [0]

select isnull(Code, "()"), Phone from clientphones...аналог этого же самого в Интербейс 5.х, ошибка на неизвестную команду...Или хотя бы вариант конкатенции двух строк, одна из которых пустая. Пример:
select "(" || Code || ")" || PHONE from clientphones,
где одна из строк может быть пустой(вернее null)...Спасибо за сотрудничество


 
kaif ©   (2003-02-13 02:13) [1]

В IB нет встроенных функций. Можно функцию isnull написать для UDF (свою dll сделать). ИМХО, это наилучший выход.


 
OlegN   (2003-02-14 00:11) [2]

Ну допустим что встроенных функций нет, но вот IS [NOT] NULL все таки есть, только пишется раздельно :-)

Здесь насколько я понял проблема у IB именно в пустой строке...
Если строки не пустые, то "(" || Code || ")" сработает, а вот с пустой мне так и не удалось решить - в результате всегда получаем пустую строку


 
AlexSerp ©   (2003-02-14 08:56) [3]

А напишите процедурку, где и сравнивайте на NULL полученное значение.
А потом, если IS NULL , то присвойте нужной переменной пустую строку.

for select Code, PHONE
from clientphones
into :code, :phone
do begin
if (code is null) then code ="";
result ="(" || Code || ")" || phone;
end


или

for select Code, PHONE
from clientphones
into :code, :phone
do begin
if (code is null) then
result ="()" || phone;
else
result ="(" || Code || ")" || phone;
end


Саня


 
perov ©   (2003-02-14 09:22) [4]

или переходить на более новые версии, там есть функция iif



Страницы: 1 вся ветка

Текущий архив: 2003.03.03;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.02 c
4-5927
Evgeniy Startsev
2003-01-15 13:11
2003.03.03
ClassName


14-5763
Afonya
2003-02-15 11:04
2003.03.03
Компонент для работы с MATLAB


3-5407
boa
2003-02-12 08:55
2003.03.03
Закрытие сессии по IdleTime


7-5878
Dabus
2003-01-03 07:34
2003.03.03
Большие массивы


14-5850
Ricks
2003-02-14 00:32
2003.03.03
Сильно французы хитрые :-)