为什么将varchar值“ This is full”转换为数据类型int时转换失败?

奇迪·奥克(Chidi Okeh)

这段代码已经使用了一年,但是突然之间,我们开始得到:

将varchar值“ This is full”转换为数据类型int时转换失败

代码:

CASE 
   WHEN L.Seating_Capacity - COALESCE(TS.TakenSeats,0) = 0 THEN 'This is full'
   WHEN l.location = 'MLK High School' AND d.trainingDates = '5/14/2014' THEN 70 - COALESCE(TS.TakenSeats,0)
   ELSE CAST(L.Seating_Capacity - COALESCE(TS.TakenSeats,0) AS VARCHAR)
END AS 'AvailableSeats'

任何想法出了什么问题?

Damien_The_Unbeliever

因为CASE是一个表达式-它计算单一类型的单一值。因此,所有可能的THENs(和ELSE)必须全部产生可以转换为单一类型的值。您不能让一个THEN产生一个,varchar而另一个不能产生一个int

而且,由于int具有更高的优先级varchar,这就是单一的数据类型的SQL Server会尝试把一切。

CASE WHEN  L.Seating_Capacity - COALESCE(TS.TakenSeats,0) = 0
 THEN 'This is full'
WHEN l.location='MLK High School' AND d.trainingDates = '5/14/2014'
 THEN CONVERT(varchar(10),70 - COALESCE(TS.TakenSeats,0))
ELSE CONVERT(varchar(10),L.Seating_Capacity - COALESCE(TS.TakenSeats,0))
END AS 'AvailableSeats'

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Laravel为什么说“将nvarchar值'[]'转换为数据类型int时转换失败”

来自分类Dev

将varchar值'@id'转换为数据类型int时转换失败

来自分类Dev

将varchar值'U'转换为数据类型int时转换失败

来自分类Dev

将varchar值'xxx'转换为数据类型int时转换失败

来自分类Dev

将varchar值'where name_id in('转换为数据类型int时,转换失败

来自分类Dev

将varchar值'29 / 09/2016'转换为数据类型int时转换失败

来自分类Dev

将varchar值'_1'转换为数据类型int时转换失败

来自分类Dev

将varchar值'is_special_taken'转换为数据类型int时转换失败

来自分类Dev

将varchar值'Id'转换为数据类型int时转换失败

来自分类Dev

将varchar值'@uye_yasi'转换为数据类型int时转换失败

来自分类Dev

将字符串的 varchar 值转换为数据类型 int 时转换失败

来自分类Dev

将varchar值'Oct'转换为数据类型int时转换失败

来自分类Dev

SQL-将Varchar值转换为数据类型Int时转换失败

来自分类Dev

将varchar值'CA3'转换为数据类型int时转换失败

来自分类Dev

如何调试“将varchar值X转换为数据类型int时转换失败”?

来自分类Dev

将varchar值'0%'转换为数据类型int时转换失败

来自分类Dev

将varchar值'BUE'转换为数据类型int时转换失败

来自分类Dev

将varchar值'6276.54'转换为数据类型int时转换失败

来自分类Dev

将 varchar 值“0.87”转换为数据类型 int 时转换失败

来自分类Dev

将 varchar/nvarchar 值转换为数据类型 int 时转换失败

来自分类Dev

将 varchar 值“AND ID =”转换为数据类型 int 时转换失败

来自分类Dev

错误“将varchar值'ABC'转换为数据类型int时转换失败。”

来自分类Dev

将varchar值'[]'转换为数据类型int时转换失败

来自分类Dev

将varchar值'80 -4'转换为数据类型int时转换失败

来自分类Dev

将varchar值'FOT'转换为数据类型int时转换失败

来自分类Dev

将Varchar值“ NOTDEFINED”转换为数据类型Int时转换失败

来自分类Dev

将varchar值'none'转换为数据类型int时转换失败

来自分类Dev

将 varchar 值“RESOLVED SATURDAY”转换为数据类型 int 时转换失败

来自分类Dev

将 varchar 转换为数据类型 int 时转换失败...但字段为 varchar

Related 相关文章

  1. 1

    Laravel为什么说“将nvarchar值'[]'转换为数据类型int时转换失败”

  2. 2

    将varchar值'@id'转换为数据类型int时转换失败

  3. 3

    将varchar值'U'转换为数据类型int时转换失败

  4. 4

    将varchar值'xxx'转换为数据类型int时转换失败

  5. 5

    将varchar值'where name_id in('转换为数据类型int时,转换失败

  6. 6

    将varchar值'29 / 09/2016'转换为数据类型int时转换失败

  7. 7

    将varchar值'_1'转换为数据类型int时转换失败

  8. 8

    将varchar值'is_special_taken'转换为数据类型int时转换失败

  9. 9

    将varchar值'Id'转换为数据类型int时转换失败

  10. 10

    将varchar值'@uye_yasi'转换为数据类型int时转换失败

  11. 11

    将字符串的 varchar 值转换为数据类型 int 时转换失败

  12. 12

    将varchar值'Oct'转换为数据类型int时转换失败

  13. 13

    SQL-将Varchar值转换为数据类型Int时转换失败

  14. 14

    将varchar值'CA3'转换为数据类型int时转换失败

  15. 15

    如何调试“将varchar值X转换为数据类型int时转换失败”?

  16. 16

    将varchar值'0%'转换为数据类型int时转换失败

  17. 17

    将varchar值'BUE'转换为数据类型int时转换失败

  18. 18

    将varchar值'6276.54'转换为数据类型int时转换失败

  19. 19

    将 varchar 值“0.87”转换为数据类型 int 时转换失败

  20. 20

    将 varchar/nvarchar 值转换为数据类型 int 时转换失败

  21. 21

    将 varchar 值“AND ID =”转换为数据类型 int 时转换失败

  22. 22

    错误“将varchar值'ABC'转换为数据类型int时转换失败。”

  23. 23

    将varchar值'[]'转换为数据类型int时转换失败

  24. 24

    将varchar值'80 -4'转换为数据类型int时转换失败

  25. 25

    将varchar值'FOT'转换为数据类型int时转换失败

  26. 26

    将Varchar值“ NOTDEFINED”转换为数据类型Int时转换失败

  27. 27

    将varchar值'none'转换为数据类型int时转换失败

  28. 28

    将 varchar 值“RESOLVED SATURDAY”转换为数据类型 int 时转换失败

  29. 29

    将 varchar 转换为数据类型 int 时转换失败...但字段为 varchar

热门标签

归档