登录
首页 >  数据库 >  MySQL

在 MySQL 中如何检查一个值是否为整数?

来源:tutorialspoint

时间:2023-08-27 13:20:49 248浏览 收藏

欢迎各位小伙伴来到golang学习网,相聚于此都是缘哈哈哈!今天我给大家带来《在 MySQL 中如何检查一个值是否为整数?》,这篇文章主要讲到等等知识,如果你对数据库相关的知识非常感兴趣或者正在自学,都可以关注我,我会持续更新相关文章!当然,有什么建议也欢迎在评论留言提出!一起学习!

要检查给定值是否是字符串,我们使用cast()函数。如果该值不是数字则返回 0,否则返回数字值。这样我们就可以检查该值是否是整数。

情况 1 - 检查带有整数的字符串

mysql> select cast('John123456' AS UNSIGNED);

以下是输出。表明该值不是数字,因此返回0。

+--------------------------------+
| cast('John123456' AS UNSIGNED) |
+--------------------------------+
|                              0 |
+--------------------------------+
1 row in set, 1 warning (0.00 sec)

情况 2 - 仅检查整数值

mysql> select cast('123456' AS UNSIGNED);

以下是输出。它表明该值是数字,因此返回值本身。

+----------------------------+
| cast('123456' AS UNSIGNED) |
+----------------------------+
|                     123456 |
+----------------------------+
1 row in set (0.00 sec)

这个逻辑对于浮动也很有效。

以下是浮点值的查询。

mysql>  SELECT CAST('78.90' AS UNSIGNED);

这是输出。

+---------------------------+
| CAST('78.90' AS UNSIGNED) |
+---------------------------+
|                        78 |
+---------------------------+
1 row in set, 1 warning (0.00 sec)

与常规运算符的替代逻辑

它适用于任何值的所有条件,甚至是浮点数。

让我们创建一个新表。

mysql> create table CheckingIntegerDemo
   -> (
   -> Value varchar(200)
   -> );
Query OK, 0 rows affected (0.88 sec)

将记录插入表中。

mysql> insert into CheckingIntegerDemo values('John123456');
Query OK, 1 row affected (0.10 sec)

mysql>  insert into CheckingIntegerDemo values('123456');
Query OK, 1 row affected (0.16 sec)

mysql> insert into CheckingIntegerDemo values('123.456');
Query OK, 1 row affected (0.16 sec)

显示所有记录。

mysql> select *from CheckingIntegerDemo;

这是输出。

+------------+
| Value      |
+------------+
| John123456 |
| 123456     |
| 123.456    |
+------------+
3 rows in set (0.00 sec

上面的输出中,只有 123456 是整数,其余都不是整数。

检查值是否为整数的语法。

select yourColumnName from yourTableName where yourColumnName REGEXP '^-?[0-9]+$';

我们使用正则表达式的查询。这将仅输出整数值。

mysql> select Value from CheckingIntegerDemo where Value REGEXP '^-?[0-9]+$';

以下是输出。

+--------+
| Value  |
+--------+
| 123456 |
+--------+
1 row in set (0.00 sec)

到这里,我们也就讲完了《在 MySQL 中如何检查一个值是否为整数?》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

声明:本文转载于:tutorialspoint 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>