SELECT CAST('123' AS SIGNED INTEGER); SELECT CONVERT('456', SIGNED INTEGER);
上述两个示例代码都可以将字符串“123”和“456”转换为int类型。其中,CAST函数将字符串作为第一个参数,并指定转换为SIGNED INTEGER类型。CONVERT函数则需要额外指定数据类型为SIGNED INTEGER。
需要注意的是,如果需要将非数字字符串转换为int类型,会得到一个默认的值0。为了避免此类情况,大家可以使用IF函数为转换失败的情况提供一个默认值:
SELECT IF(CAST('abc' AS SIGNED INTEGER) IS NULL, 0, CAST('abc' AS SIGNED INTEGER)); SELECT IF(CONVERT('def', SIGNED INTEGER) IS NULL, 0, CONVERT('def', SIGNED INTEGER));
以上代码将字符串“abc”和“def”转换为int类型,如果转换失败,则返回默认值0。
总之,MySQL支持将字符串转换为int类型,并提供CAST和CONVERT函数进行转换。大家可以根据需要使用这些函数,同时注意在转换失败的情况下为值提供默认值。