Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Вычисляемый булевый столбец  [new]
Sergey555
Member

Откуда:
Сообщений: 7
Всем доброго времени суток!
Пытаюсь создать вычисляемый булевый столбец, содержащий ответ на вопрос, находится ли пользователь онлайн. Столбец OnlineNow должен содержать 1, если с момента последнего обращения пользователя к базе данных (столбец LastOnline) прошло меньше 10 минут. Делаю так:

ALTER TABLE Accounts ADD OnlineNow AS (DATEDIFF(MINUTE,LastOnline,GETDATE()) < 10);

Получаю ошибку: Неправильный синтаксис около конструкции "<".

Подскажите, как это можно сделать?
15 апр 12, 14:17    [12418816]     Ответить | Цитировать Сообщить модератору
 Re: Вычисляемый булевый столбец  [new]
iljy
Member

Откуда:
Сообщений: 8711
Sergey555,

в скуле нет булевого типа. С помощью case можно сформировать столбец типа int или bit.
15 апр 12, 14:20    [12418821]     Ответить | Цитировать Сообщить модератору
 Re: Вычисляемый булевый столбец  [new]
Sergey555
Member

Откуда:
Сообщений: 7
да, я имею ввиду bit. Вам не сложно подправить выражение которое я написал?
15 апр 12, 14:28    [12418838]     Ответить | Цитировать Сообщить модератору
 Re: Вычисляемый булевый столбец  [new]
iljy
Member

Откуда:
Сообщений: 8711
Sergey555,

BOL-CASE
BOL-CAST/CONVERT

Ученье - свет! ;)))
15 апр 12, 14:38    [12418848]     Ответить | Цитировать Сообщить модератору
 Re: Вычисляемый булевый столбец  [new]
Sergey555
Member

Откуда:
Сообщений: 7
А все разобрался, спасибо
15 апр 12, 14:41    [12418851]     Ответить | Цитировать Сообщить модератору
 Re: Вычисляемый булевый столбец  [new]
iljy
Member

Откуда:
Сообщений: 8711
Sergey555,

не за что
На всякий случай учтите вот что:
select DATEDIFF(mi,'20:00:59.997','20:01')
15 апр 12, 14:48    [12418858]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить