我正在寻找从这些字符串中提取整数的最佳方法:
Next Day
2 Days
3 Days
...
29 Days
30 Days
30+ Days
我可以使用子字符串来做到这一点,但我只是想知道是否有一个更简单的函数可以自动尝试将字符串转换为整数(intval()
例如,类似于 PHP 的函数。
使用CAST()
SELECT CAST('30+ Days' as UNSIGNED)
-如果数据已签名,那么当然要转换为SIGNED
:
SELECT CAST('-30 Days' as SIGNED);
但是,它不能像 PHPstrtotime()
或类似的那样工作,也不会转换Next Day
成有意义的东西。如果您需要这样做,请使用DATE_ADD()函数(或类似函数)。