类型转换函数可以将一种数据类型转换为另外一种数据类型,如数值类型和时间类型到字符串类型的相互转换。

    • 示例:时间字符串转换为时间类型

      MySQL 租户中,时间字符串可以直接复制给 date 类型,MySQL 可以自动转换为时间类型,另外也可以使用 convert 或 cast 函数做类型转换。SQL语句如下:

    1. obclient> SELECT CONVERT('2020-02-02 14:30:45', date) t1
    2. , CONVERT('2020-02-02 14:30:45', time) t2
    3. , CONVERT('2020-02-02 14:30:45', datetime) t3
    4. , CAST('2020-02-02 14:30:45' AS date) t4
    5. , CAST('2020-02-02 14:30:45' AS time) t5
    6. , CAST('2020-02-02 14:30:45' AS datetime) t6
    7. \G
    8. *************************** 1. row ***************************
    9. t1: 2020-02-02
    10. t2: 14:30:45
    11. t3: 2020-02-02 14:30:45
    12. t4: 2020-02-02
    13. t5: 14:30:45
    14. t6: 2020-02-02 14:30:45
    15. 1 row in set (0.00 sec)

    MySQL 租户中时间类型转换为字符串类型,可以使用函数 date_format。

    • 示例:数值类型和字符串类型互相转换

      MySQL 租户中,数值类型和字符串类型互相转换,可以用函数 convert 、cast。

    1. obclient> SELECT convert('3.1415926', decimal) n1
    2. , cast('3.1415926' AS decimal) n2
    3. , convert(3.1415926, char(10)) s1
    4. , cast(3.1414926 AS char(10)) s2
    5. ;
    6. +------+------+-----------+-----------+
    7. | n1 | n2 | s1 | s2 |
    8. +------+------+-----------+-----------+
    9. | 3 | 3 | 3.1415926 | 3.1414926 |
    10. +------+------+-----------+-----------+
    11. 1 row in set (0.00 sec)