MariaDB MySQL 数字数据类型和字符数据类型

问题描述 投票:0回答:1

我正在寻找一个表或其他东西来显示哪种数字数据类型代表字符串表达式。

即2 = 整数

有人找到这样的参考表吗? 谢谢

我尝试了各种网站,但到目前为止还没有成功。

mariadb sqldatatypes
1个回答
0
投票

不存在这样的表,并且如果不编写复杂的(udf)函数就不可能检查字符串值是否表示整数值。

对于仅包含数字的字符串,您可以使用正则表达式或 concat 函数,例如

SELECT textcol REGEXP '^-?[0-9]+$' as IS_INT
SELECT CONCAT(`, textcol * 1) = textcol as IS_INT

但是,这会有一些限制:

  • 不适用于大于 16 字节(BIGINT_MIN/MAX)的数字
  • 它不适用于有效的整数表示,例如
    • 1e4
    • b'1010'(二进制)
© www.soinside.com 2019 - 2024. All rights reserved.