NEWID
Для генерации объекта UNIQUEIDENTIFIER, то есть некоторого уникального значения, используется функция NEWID(). Например, мы можем определить для столбца первичного ключа тип UNIQUEIDENTIFIER и по умолчанию присваивать ему значение функции NEWID:
1
2
3
4
5
6
7
8
9
10
11
12
| CREATE TABLE Clients ( Id UNIQUEIDENTIFIER PRIMARY KEY DEFAULT NEWID(), FirstName NVARCHAR(20) NOT NULL , LastName NVARCHAR(20) NOT NULL , Phone NVARCHAR(20) NULL , Email NVARCHAR(20) NULL ) INSERT INTO Clients (FirstName, LastName, Phone, Email) VALUES ( 'Tom' , 'Smith' , '+36436734' , NULL ), ( 'Bob' , 'Simpson' , NULL , NULL ) |
ISNULL
Функция ISNULL проверяет значение некоторого выражения. Если оно равно NULL, то функция возвращает значение, которое передается в качестве второго параметра:
1
| ISNULL (выражение, значение) |
Например, возьмем выше созданную таблицу и применим при получении данных функцию ISNULL:
1
2
3
4
| SELECT FirstName, LastName, ISNULL (Phone, 'не определено' ) AS Phone, ISNULL (Email, 'неизвестно' ) AS Email FROM Clients |
COALESCE
Функция COALESCE принимает список значений и возвращает первое из них, которое не равно NULL:
1
| COALESCE (выражение_1, выражение_2, выражение_N) |
Например, выберем из таблицы Clients пользователей и в контактах у них определим либо телефон, либо электронный адрес, если они не равны NULL:
1
2
3
| SELECT FirstName, LastName, COALESCE (Phone, Email, 'не определено' ) AS Contacts FROM Clients |
То есть в данном случае возвращается телефон, если он определен. Если он не определен, то возвращается электронный адрес. Если и электронный адрес не определен, то возвращается строка "не определено".
Комментариев нет:
Отправить комментарий