Jus*_*ant 3 mysql casting function
在 MySQL 5.1 中,为什么这个 SQL 不能正常工作?
SELECT CAST (20091023 as date);
Run Code Online (Sandbox Code Playgroud)
[我刚刚自己找到了这个问题的答案——我会在下面自己回答——但这种行为太奇怪了,我想把它作为一个 StackOverflow 问答对来捕捉,这样其他人就不会浪费时间了同样的问题。]
此代码有效:(注意“CAST”后删除了空格)
SELECT CAST(20091023 as date);
Run Code Online (Sandbox Code Playgroud)
原来 MySQL 要求特定的内置函数列表在函数名和括号之间没有空格。有关此行为存在的原因的更多信息,请参阅MySQL 手册中的此页面。
以下函数列表在 MySQL 5.1 中具有相同的限制(在以前的版本中还有更多):
ADDDATE
BIT_AND
BIT_OR
BIT_XOR
CAST
COUNT
CURDATE
CURTIME
DATE_ADD
DATE_SUB
EXTRACT
GROUP_CONCAT
MAX
MID
MIN
NOW
POSITION
SESSION_USER
STD
STDDEV
STDDEV_POP
STDDEV_SAMP
SUBDATE
SUBSTR
SUBSTRING
SUM
SYSDATE
SYSTEM_USER
TRIM
VARIANCE
VAR_POP
VAR_SAMP
Run Code Online (Sandbox Code Playgroud)
希望这个答案可以帮助您避免浪费与我在此相同的时间!:-)