Укажите тип в вычисляемом столбце SQL Server

Я только что добавил вычисляемый столбец в таблицу, и он отображается как int, и я хотел бы сделать это возможно bit? Мне сложно найти информацию об этом. Ниже приведен вычисленный столбец:

IsActive  AS case when DateDecommissioned is null then 0 else 1 end PERSISTED 
6 голосов | спросил Nate 9 FebruaryEurope/MoscowbThu, 09 Feb 2012 01:40:47 +0400000000amThu, 09 Feb 2012 01:40:47 +040012 2012, 01:40:47

2 ответа


7

Вы должны иметь возможность CAST указать предпочтительный тип данных внутри CASE:

...IS NULL THEN CAST(0 as BIT) ELSE CAST(1 as BIT) END

ответил JNK 9 FebruaryEurope/MoscowbThu, 09 Feb 2012 02:04:27 +0400000000amThu, 09 Feb 2012 02:04:27 +040012 2012, 02:04:27
5

Или немного проще ...

IsActive AS CONVERT(BIT, CASE ... END) PERSISTED
ответил Aaron Bertrand 9 FebruaryEurope/MoscowbThu, 09 Feb 2012 03:09:47 +0400000000amThu, 09 Feb 2012 03:09:47 +040012 2012, 03:09:47

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132