做 CAST
以及 CONVERT
函数在mysql中工作吗?根据文件,他们应该:https://dev.mysql.com/doc/refman/8.0/en/cast-functions.html
但当我跑的时候
SELECT CAST(25.65 AS varchar);
SELECT CONVERT(varchar, 25.65);
在hackerrank.com上选择了mysql,我收到一个错误:
第1行出现错误1064(42000):您的sql语法有错误;在第1行的“varchar”附近,检查与mysql服务器版本对应的手册,以获得正确的语法
同时,相同的命令在mssqlserver上也可以正常工作。请告诉我,如果我不明白的东西或有一个错误的网站?
1条答案
按热度按时间k4emjkb11#
您已经引用了文档。你还需要仔细阅读。尤其是convert(expr,type)部分列出了允许的类型。令人困惑的是,这些类型与用于定义值的类型不同。
因此,mysql中的工作原理如下:
对我来说也有类似的问题
int
,其中cast()
是unsigned
或者signed
.请注意
CONVERT()
与sql server的顺序相反。我不知道为什么会这样。我注意到这种情况也发生在DATEDIFF()
也许还有其他功能。