检查给定输入是数字输入还是字符输入

时间:2019-11-01 10:29:04

标签: sql-server

我想确定给定的输入是字符串还是数字,并基于此,我要写不同的值(如果是字符串,则为字符串值,如果是数字,则要写数字值)

我尝试了以下代码

select case when isnumeric('text1') = 1 then
123
else
'abc'
end

执行上述查询时出现以下错误

  

无法将nvarchar转换为数字

1 个答案:

答案 0 :(得分:0)

CAST

您的问题不完整,不确定要做什么,但是基于错误,您可以尝试以下操作

SELECT CASE WHEN isnumeric('text1') = 1 THEN CAST(123 AS VARCHAR(10)) ELSE 'abc' END