【sql取出某字段中所有值为整数的数据】SQL取出某字段中所有值为整数的数据

更新时间:2019-05-07    来源:php与数据库    手机版     字体:

【www.bbyears.com--php与数据库】

假如有下列表格

num_表名

id   value 
 1   100 
 2   32.12 
 3   45 
 4   98.1 

如何从表格中取出所有值为整数的数据呢?

灵活的利用取余,轻松搞定:

 代码如下

select * from num where value%1 = 0;


方法二,有条件性的存储过程判断

 

 代码如下

DELIMITER $$


DROP FUNCTION IF EXISTS `IsNum` $$

CREATE FUNCTION `IsNum` (str VARCHAR(25)) RETURNS INT

BEGIN

DECLARE iResult INT DEFAULT 0;


IF ISNULL(str) THEN return 0; END IF;-- NULL 字符串


IF str = "" THEN return 0; END IF;-- www.111Cn.net空字符串


SELECT str REGEXP "^[0-9]*$" INTO iResult;

IF iResult = 1 THEN

RETURN 1;

ELSE

RETURN 0;

END IF;

END $$


DELIMITER ;


/* 关于 delimiter 的说明请查看文档 MySQL 中函数定义中 delimiter的说明

这个函数用来判断给定的字符串是否为函数, 用法示例:


select IsNum("12"); -- 结果为 1

select IsNum("12-"); -- 结果为 0

本文来源:http://www.bbyears.com/jiaocheng/49984.html