【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