![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Слияние полей в MDB [D7, MDB]
_Max © (2005-06-01 09:31:00)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 получить слияние полей?
_Max (2005-06-01 12:32:00) [1]>sniknik
спасибо большое. То, что нужно
ANB (2005-06-01 10:51:00) [2]
> зачем тогда даеш? и не предупреждаеш сразу что это не то.
> обман получается.
- вообще то я ANSI дал. Просто case не во всех СУБД реализован (ИМХО). В оракле я NVL юзаю. Это для примера - как решать проблему. А для конкретного решения пусть хэлп по своей СУБД смотрит. Автор то попробовал или нет ?
sniknik (2005-06-01 10:48:00) [3]> так как я оракловый синтаксис тебе даю, а про MDB никогда не слышал.
зачем тогда даеш? и не предупреждаеш сразу что это не то. обман получается.
> [7]
ошибочка "вкралась" несущественная ;), во втором условии F1 на F2 поменять надо бы, а то будет просто строки двоить. думаю и так бы увидел, без этого предупреждения.
sniknik (2005-06-01 10:44:00) [4]для аксес
select iif(IsNull(F1),'',F1)+iif(IsNull(F2),'',F1) from test
_Max (2005-06-01 10:14:00) [5]в Oracle то - это да. Там возможности шире...
ANB (2005-06-01 10:10:00) [6]select (case when F1 is null then '' else F1 end) + F2 from Test.db
А вообще не мешало бы хелп посмотреть, так как я оракловый синтаксис тебе даю, а про MDB никогда не слышал.
_Max (2005-06-01 09:57:00) [7]Точно ли именно такой синтаксис ?
select (case F1 is null then '' else F1)
Выдаёт ошибку:
Ошибка синтаксиса (пропущен оператор) в выражении запроса
'(case F1 is null then '' else F1)'
ANB (2005-06-01 09:48:00) [8]Зачем ? Прямо в селекте. По моему, case для ХП не очень предназначен, его в селеках юзают.
_Max (2005-06-01 09:44:00) [9]> ANB в процедуре хранимой ?
ANB (2005-06-01 09:39:00) [10](case F1 is null then '' else F1)