sql-server - 有没有一种方法无需在 SQL Server 中进行转换即可获取 bool 值?

标签 sql-server tsql casting

我发现很奇怪的是,像这样的简单代码无效:

select * from table where field=true

替代方案显然是

select * from table where field='true'

好吧,我想我可以忍受。由于某种原因,我最近需要做这样的事情:

select true as somefield,...

获取类型和一切正确的替代方法要丑陋得多:

select cast('true' as bit) as somefield,...

我错过了什么吗?实际上是否有一些内置方法可以在不进行强制转换的情况下获得 true 或 false 值作为 bool 值?

最佳答案

位是 T-SQL 中最常用于表示 bool 值的数据类型。 我通常会做这样的事情:

select CAST(1 as bit) as somefield

关于sql-server - 有没有一种方法无需在 SQL Server 中进行转换即可获取 bool 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3095538/

相关文章:

sql - T-SQL ORDER BY 根据条件

c++ - 我可以将一个对象类转换为它在其中实现的接口(interface)指针吗?

C++ 类型转换损坏的结构

sql - 数据透视问题,SQL Server

sql-server - 在没有实际的 SQL Server 数据库启动和运行的情况下,我将如何配置工作量测试工具来模拟 Entity Framework 的 DbContext?

sql - 选择 null 作为 testdate 进入 #temp_table

sql-server - 将特定列中的所有行设置为 false

java - 类型转换中的模棱两可的行为

sql - 循环遍历列 SQL

sql - 在 SQL Server 中对临时表使用 View 的优点是什么