Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.206 c
4-1116330535
Shuma
2005-05-17 15:48
2005.07.11
Виртуальный диск


3-1117141559
highlander
2005-05-27 01:05
2005.07.11
Помогите разобраться с запросом


1-1118659053
w666w
2005-06-13 14:37
2005.07.11
Запись/восстановление TComponent из строки.


5-1088080715
Tor
2004-06-24 16:38
2005.07.11
Панель с кнопками


1-1118380019
dp200
2005-06-10 09:06
2005.07.11
Разбивка стоки




   Наверх