如何在sql-server视图中选择1作为位?

时间:2010-10-18 21:14:25

标签: sql sql-server-2000

我想创建一个视图,我在其中选择以下内容:

select id, name, 1 as active
from users

但是,我希望我在select语句中创建的活动字段(它在表中不存在)是一个位字段。有没有办法做到这一点?

4 个答案:

答案 0 :(得分:57)

您可以使用CONVERT运算符。

SELECT id, name, CONVERT(bit, 1) AS active
FROM users

CAST或CONVERT可以使用。

答案 1 :(得分:10)

select id, name, CAST(1 AS bit) as active
from users

1是真实位的显示。你想要达到什么目的。

select CAST('true' AS bit) as active

也会返回1

答案 2 :(得分:4)

是的,你把它投了一下:

select id, name, cast(1 as bit) as active
from users

在某些情况下与比特值进行比较时,这对提高性能也很有用:

select id, name
from users
where active = cast(1 as bit)

(在这个例子中,它可能没有实际的区别,但我看到了更复杂的查询的实际差异。)

答案 3 :(得分:2)

select id, name, Convert(bit, 1) as active
from users

你可能想做什么。