SQL SERVER 判断是否数字的方法

转自:https://www.cnblogs.com/worfdream/articles/3055131.html

-----------------------------------------------------以下为正文----------------------------

检测是不是数字型的数据, 两种方法

1. ISNUMERIC ( expression )

2. PATINDEX ( '%pattern%' , expression )

 

 

1. ISNUMERIC ( expression )

如果是数字类型则返回 1 ,不是则返回 0

但ISNUMERIC有时是不可靠的,如果你不允许expression包含有任何字母,则会判断错:

如:ISNUMERIC(‘23e4’)返回 1

   ISNUMERIC(‘23d4’)返回 1

 

 

2. PATINDEX ( '%pattern%' , expression )

返回值为第一个满足pattern的位置, 如果没有满足的则返回值为0

 

判断是否为数字类型

PATINDEX('%[^0-9]%', expression)

返回值为0,则是纯数字类型

 

对于支持小数点和正负数写法是

PATINDEX('%[^0-9|.|-|+]%', expression)






知行办公,专业移动办公平台
 https://zx.naton.cn/
【总监】十二春秋之,[email protected]
【Master】zelo,[email protected]
【运营】运维艄公,[email protected]
【产品设计】流浪猫,[email protected]
【体验设计】兜兜,[email protected]
【iOS】淘码小工,[email protected];iMcG33K,[email protected]
【Android】人猿居士,[email protected];思路的顿悟,[email protected]
【java】首席工程师MR_W,[email protected]
【测试】土镜问道,[email protected]
【数据】fox009521,[email protected]
【安全】保密,你懂的。 




你可能感兴趣的:(SQL SERVER 判断是否数字的方法)