sql判断字符是否数字
㈠ sql:判断文本类型的字符是否为数字,是的话将其转换为数值型返回
where isnumeric(字段1)=1加上条件
或是全显示为字符
㈡ oracle sql 判断是否数字
可以用oracle自带的正则表达式函数regexp_replace把数字全部取出来,然后计算数字的长度是否等于这个字段的长度,如果等于的话说明这个值全部是数字,如果不等于的话说明值里面包含非数字,测试语句如下:
select(regexp_replace('lss12345',
'[^0-9]'))
from
al;---取出值里面的全部数字
select
length('lss12345'),length(regexp_replace('lss12345',
'[^0-9]'))
from
al;
---查询出字段的长度和字段内数字的长度
select*
from
al
where
length('lss12345')
=
length(regexp_replace('lss12345',
'[^0-9]'))
;
----查询这个字段所有的纯数字列
㈢ sql 判断是否为数字
不知道你是什么数据库啊。
以后你要询问有关数据库函数的问题, 最好明确说明一下啊。
Oracle 通过正则表达式判断, 字符串是否是数字。
可以使用正则表达式的方式来判断。
REGEXP_LIKE( 字段 , '(^[+-]?\d{0,}\.?\d{0,}$)'
来判断 是否是数字
㈣ oracle判断字符串是否为数字
用正则表达式:
ORACLE查出列为纯数字的值:
SELECT* FROM DUAL WHERE LENGTH('LSS12345') = LENGTH(REGEXP_REPLACE('LSS12345', '[^0-9]'))
㈤ sql判断一个字符串是否是数字
如果是ORACLE,可以:
select translate(str,'x1234567890','x') from al,如果得到的是空则是数字,如果不是空,则是带字符串的。
㈥ mysql 判断字符是不是数字
DELIMITER$$
DROPFUNCTIONIFEXISTS`IsNum`$$
CREATEFUNCTION`IsNum`(strVARCHAR(25))RETURNSINT
BEGIN
DECLAREiResultINTDEFAULT0;
IFISNULL(str)THENreturn0;ENDIF;--NULL字符串
IFstr=''THENreturn0;ENDIF;--空字符串
SELECTstrREGEXP'^[0-9]*$'INTOiResult;
IFiResult=1THEN
RETURN1;
ELSE
RETURN0;
ENDIF;
END$$
DELIMITER;
关于delimiter的说明请查看文档MySQL中函数定义中delimiter的说明
这个函数用来判断给定的字符串是否为函数,用法示例:
selectIsNum('12');--结果为1
selectIsNum('12-');--结果为0
selectIsNum(说明)fromTABLE_XX
㈦ 怎样判断sql字符串中是否包含数字和字母
判断是否含有字母
select PATINDEX('%[A-Za-z]%', ‘ads23432')=0
(如果存在字母,结果>1)
判断是否含有数字
PATINDEX('%[0-9]%', ‘234sdf')=0
(如果存在数字,结果>1)
㈧ 怎么用SQL判断字段值是否为字符或者数字
在不改变你SQL的基础上再加一个 LEFT(col1,1)<>'-'
select * from tb
where
ISNUMERIC(col1)>0 and LEFT(col1,1)<>'-'
---
ISNUMERIC(col1)>0这个本身就将资料过滤为只有数字(正数或负数,没有你说的其他符号了),在其基础上再将负数的情况过滤掉就OK了
㈨ SQL判断一个字段里是不是有字母、符号、数字
USE 数据库名
ALTER TABLE 表名
ADD CONSTRAINT CK_INT CHECK(字段名 LIKE '%[0-9]%'), --约束为数字
CONSTRAINT CK_CHAR CHECK (字段名 NOT LIKE '[0-9]') --约束为字符
在SQL SERVER2000测试通过