当前位置: 首页 > 面试题库 >

如何将varchar列转换为SQL SERVER中的bit列

杨俊茂
2023-03-14
问题内容

Flag1varchar具有值“ true”和“ false”的列。我需要将其转换为位列。

当我尝试这样做时:

Convert(Bit,Flag1)

它显示一个错误

Msg 245, Level 16, State 1, Line 2
Syntax error converting the varchar value 'False' to a column of data type bit.

问题答案:

我怀疑在字段“ Flag1”中除了“ true”和“ false”以外还有其他值。因此,请检查Flag1中的值。

从YouTable中选择不同的Flag1。

这是我的证明:

declare @Flag varchar(25) = 'False'
select CONVERT(Bit, @Flag)

它工作正常。

但是,这将产生相同的错误。

declare @Flag varchar(25) = '  False' -- Pay attention to the the space in '  False'!
select CONVERT(Bit, @Flag)

->消息245,级别16,状态1,第2行,将varchar值’False’转换为数据类型位时,转换失败。

请注意错误消息中“ False”中的空格!



 类似资料:
  • 问题内容: 我需要将变量中的值转换为格式化为格式的变量(无时间部分)。 我怎么做? 问题答案: 使用Microsoft Sql Server:

  • 问题内容: 我在mySQL 5.1中有一个数据类型的日期列。如何将其转换为DATE? 这是我到目前为止所拥有的- 得到这个 错误-#1064-您的SQL语法有错误;查看与您的MySQL服务器版本相对应的手册以获取正确的语法,以在’FROM 7 FOR 4附近使用) 请帮忙。 问题答案: 您可以使用MySQL的功能 尽管我怀疑您使用Unix时间戳会更轻松

  • 问题内容: 我正在做这个 它给了我这个 但是我想要这个 请帮忙。 问题答案: 首先将其转换为十进制, SQLFiddle演示

  • 问题内容: 我在下面的查询中,需要转换为 架构图 我尝试了什么 但它们不起作用。请提出建议。 问题答案: 您将需要或作为数据类型,没有可以将数据强制转换/转换为以下数据的数据类型: 请参阅下面的SQL(实际上)在SQL Fiddle中 : 除了您试图转换为不正确的数据类型外,您所使用的语法也不正确。该函数使用以下列或值: 要么 您的原始查询的语法向后。

  • 问题内容: 我试图使用像这样的数字列表。 这是sql过程的一部分,变量’list_of_ids’是varchar,它包含如下所示的id:1、2、3、4、5 ........如何使用此列表和此查询 问题答案: 也尝试一下。这可能是更好的解决方案,因为它不需要创建任何其他功能。oracle regexp_substr会将逗号分隔的值拆分为不同的行,并传递给查询。

  • 我将客户数据转换成DB表,其中Varchar列类型中的几个单元格值包含date,而不包含date。包含特定格式的日期的文件需要转换为另一个文件,以便进一步用于数据分析作业。我尝试了下面的查询,但它显示了没有日期的单元格的错误。我如何解决这个问题? 基本上,我想去掉实际时间,加上000000来代替实际时间和日期。 查询: 错误: 代码:1292截断了不正确的日期时间值:“EVN”