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)
1.varchar转int
函数:cast
用法:cast(字段 as SIGNED INTEGER)
或者cast(字段 as UNSIGNED INTEGER))
例如:SELECT CAST(DATE_FORMAT(NOW(),"%Y%m%d") as SIGNED INTEGER)
2.varchar转date
函数:str_to_date(字段,字符串格式)
用法:select str_to_date(字段,'%Y-%m-%d') from tablea limit 100;
根据日期进行选取
选取日期大于2019年的所有字段
例如:select * from tablea where str_to_date(tablea.日期,'%Y-%m-%d')>'2019-00-00'
在mysql中,一个时间字段的存储类型是int(11),怎么转化成字符类型,比方存储为13270655222,需要转化为yyyy -mm-dd的形式使用 FROM_UNIXTIME函数,具体如下:
FROM_UNIXTIME(unix_timestamp,format)
返回表示 Unix 时间标记的一个字符串,根据format字符串格式化。format可以包含与DATE_FORMAT()函数列出的条目同样的修饰符。
根据format字符串格式化date值。下列修饰符可以被用在format字符串中: %M 月名字(January……December)
%W 星期名字(Sunday……Saturday)
%D 有英语前缀的月份的日期(1st, 2nd, 3rd, 等等。)
%Y 年, 数字, 4 位
%y 年, 数字, 2 位
%a 缩写的星期名字(Sun……Sat)
%d 月份中的天数, 数字(00……31)
%e 月份中的天数, 数字(0……31)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)