C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
SQL, Выполнение запроса
Андрей
Отправлено: 20.10.2004, 13:15


Не зарегистрирован







Есть такой запрос:

SELECT Org.Name, Bank.Name AS BankName, [User].FIO, Call.DateBegin, Call.DateEnd, Call.Description
FROM Call LEFT OUTER JOIN
Org ON Org.ID = Call.IdOrg LEFT OUTER JOIN
Bank ON Bank.ID = Call.IDBank INNER JOIN
[User] ON [User].ID = Call.IdUser


и мне надо получить ответ, чтобы поля Name и BankName были как одно.

Предложение типа Name+BankName не проходят, т.к. в одно из них возвращаемое значение NULL и поэтому сложение почемуто тоже становиться NULL
xim
Отправлено: 20.10.2004, 14:07


Станционный диспетчер

Группа: Участник
Сообщений: 143



Ну под SQL Server это работало бы как
CODE

coalesce(Name,'')+coalesce(BankName,'')


Какая субд используется?
Андрей
Отправлено: 20.10.2004, 14:51


Не зарегистрирован







to xim

Спасибо, все заработало ...

СУБД MSSQL
Gedeon
Отправлено: 20.10.2004, 15:34


Ветеран

Группа: Модератор
Сообщений: 1742



по моему
CODE

ISNULL(Name,'')+ISNULL(BankName,'')

будет побыстрее.
xim
Отправлено: 20.10.2004, 18:32


Станционный диспетчер

Группа: Участник
Сообщений: 143



Да, действительно, isnull немного побыстрее coalesce
(когда писал, думал о своем smile.gif )

Вернуться в Работа с базами данных в C++Builder