Функция coalesce() на примере сборки адреса

14. ноября 2011 10:50 by Admin in MSSQL  //  Tags:   //   Комментарии (0)

Функция coalesce() возвращает первое непустое значение из списка

Синтаксис функции coalesce(выражение1, выражение2, ...)

Как работает эта функция очень наглядно можно продемонстрировать на примере с адресами.

Допустим, есть форма ввода данных, в которой для адреса отведено 2 поля: address1, address2
Пользователь может заполнить оба поля, одно из полей, вообще их не заполнять
Задача - собрать адрес

С помощью функции coalesce() это делается очень просто

DECLARE @t TABLE (id INT, address1 VARCHAR(255), address2 VARCHAR(255))
INSERT INTO @t(id,address1,address2) VALUES(1,'City', 'Street')
INSERT INTO @t(id,address1,address2) VALUES(2,NULL, 'Avenue')
INSERT INTO @t(id,address1,address2) VALUES(3,'Country', NULL)
INSERT INTO @t(id,address1,address2) VALUES(4,NULL, NULL)
SELECT COALESCE(t.address1+' '+t.address2,t.address1, t.address2) FROM @t t

Добавить комментарий

  Country flag

biuquote
  • Комментарий
  • Предпросмотр
Loading

Свежачок

Календарь

<<  Февраль 2012  >>
повтсрчепясуво
303112345
6789101112
13141516171819
20212223242526
2728291234
567891011

View posts in large calendar