例如:字符串‘123.45’可以转成整数,DECIMAL默认取得整数,也可以使用SIGNED
当然也可以指定小数位数,5代表了要取的数字位数(整数位和小数位和),2代表要取到的小数位数。
转换完成就可以用来进行后期的数值比较了!
技术mysql如何转换varchar这篇文章主要介绍了mysql如何转换varchar,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。本文主要介绍mysql如何转换varchar,具有一定的参考价值。有兴趣的朋友可以参考一下。希望大家看完这篇文章后收获多多。让边肖带你去了解它。
mysql转换varchar的方法:1。使用强制转换函数进行转换;2.使用“从表名中选择-(-字段名;”模式转换;3.使用“从表名中选择字段名0;”模式转换。
本文 *** 作环境:windows7系统,mysql5.5版,戴尔G3电脑。
MySQL varchar类型转化:
问题:作为数据过滤模块,原来的表格设计有问题。表中的字段是字符串,过滤条件是数值,因此无法进行比较。
思考:你可以提取mysql字段字符串中的数字,然后进行比较。
解决:通过查阅资料,找到了三种方法。
1.使用cast函数
示例:SELECT CAST(字段名为UNSIGNED) FROM表名;
cast函数的语法规则是:Cast(作为转换的字段名的类型),其中类型可以是:
CHAR[(N)]代表:字符类型
DATE代表:日期类型
DATETIME代表:日期和时间类型
DECIMAL代表:浮点型
Ed代表:int
TIME代表:时间类型。对于以数字开头的字符串,将其转换为数字的结果是截取前一个数字部分。但是对于开头部分无法截取数字的字符串,转换结果为0,需要注意。
2.使用 -(-字段名)
示例:从表名中选择-(-字段名);
这太棒了,简单又粗鲁。
3.使用字段名直接+0,
例如:从表名中选择字段名0;
这仅用于内容都是varchar类型的数字的字段,不能包含中文或其他单词,否则将报告错误。一般建议使用1,2。
数字转字符mysql> SELECT CONCAT ( CAST(1 as char) , '2') AS test
+------+
| test |
+------+
| 12 |
+------+
1 row in set (0.00 sec)
mysql> SELECT CONCAT ( Convert(1, char) , '2') AS test
+------+
| test |
+------+
| 12 |
+------+
1 row in set (0.00 sec)
字符转数字
mysql> SELECT CAST('1' as SIGNED) + 100 AS test
+------+
| test |
+------+
| 101 |
+------+
1 row in set (0.00 sec)
mysql> SELECT Convert('1' , SIGNED) + 100 AS test
+------+
| test |
+------+
| 101 |
+------+
1 row in set (0.00 sec)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)