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

Вниз

Слияние полей в MDB   Найти похожие ветки 

 
_Max ©   (2005-06-01 09:31) [0]

select F1 + F2
from test.db
есть таблица вида

F1   F2  Code
-------------
a1   b1  1
a2       2
a3   b3  3

Запрос
select F1 + F2
from test.db
выдаёт требуемый мне результат (слияние полей)

а1b1
a2
a3b3

Проблема заключается в том, что если я использую
базу MDB, - то слияние с полем имеющим значение null
не происходит. Возвращается только
a1b1
a3b3

Вопрос в том, как можно в mdb получить слияние полей?


 
ANB ©   (2005-06-01 09:39) [1]

(case F1 is null then "" else F1)


 
_Max ©   (2005-06-01 09:44) [2]

> ANB в процедуре хранимой ?


 
ANB ©   (2005-06-01 09:48) [3]

Зачем ? Прямо в селекте. По моему, case для ХП не очень предназначен, его в селеках юзают.


 
_Max ©   (2005-06-01 09:57) [4]

Точно ли именно такой синтаксис ?

select (case F1 is null then "" else F1)
Выдаёт ошибку:
Ошибка синтаксиса (пропущен оператор) в выражении запроса
"(case F1 is null then "" else F1)"


 
ANB ©   (2005-06-01 10:10) [5]

select (case when F1 is null then "" else F1 end) + F2 from Test.db

А вообще не мешало бы хелп посмотреть, так как я оракловый синтаксис тебе даю, а про MDB никогда не слышал.


 
_Max ©   (2005-06-01 10:14) [6]

в Oracle то - это да. Там возможности шире...


 
sniknik ©   (2005-06-01 10:44) [7]

для аксес
select iif(IsNull(F1),"",F1)+iif(IsNull(F2),"",F1) from test


 
sniknik ©   (2005-06-01 10:48) [8]

> так как я оракловый синтаксис тебе даю, а про MDB никогда не слышал.
зачем тогда даеш? и не предупреждаеш сразу что это не то. обман получается.

> [7]
ошибочка "вкралась" несущественная ;), во втором условии F1 на F2 поменять надо бы, а то будет просто строки двоить. думаю и так бы увидел, без этого предупреждения.


 
ANB ©   (2005-06-01 10:51) [9]


> зачем тогда даеш? и не предупреждаеш сразу что это не то.
> обман получается.
- вообще то я ANSI дал. Просто case не во всех СУБД реализован (ИМХО). В оракле я NVL юзаю. Это для примера - как решать проблему. А для конкретного решения пусть хэлп по своей СУБД смотрит. Автор то попробовал или нет ?


 
_Max ©   (2005-06-01 12:32) [10]

>sniknik
спасибо большое. То, что нужно



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

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

Наверх




Память: 0.49 MB
Время: 0.033 c
3-1117356716
_RusLAN
2005-05-29 12:51
2005.07.11
Firebird Embedded 1.5. Не могу подключиться.


4-1115993273
Skier
2005-05-13 18:07
2005.07.11
Сообщения от скроллеров...


3-1117548404
<Lelik>
2005-05-31 18:06
2005.07.11
как получить запись через ADO


3-1117423325
akhmadey
2005-05-30 07:22
2005.07.11
Сортировка по lookup-полю


1-1118775803
Mishel01
2005-06-14 23:03
2005.07.11
Как сравнить две дирректории ?