为什么CAST在此MySQL查询中不起作用?
SELECT MAX(Signups) AS Max,
MIN(Signups) AS Min,
CAST(ROUND(AVG(Signups),2) AS VARCHAR(3)) AS Avg
FROM
(
SELECT COUNT(1) AS Signups,
DATE_FORMAT(JoinDate, "%Y-%m-%d") AS Date
FROM users
GROUP BY Date
) z
Run Code Online (Sandbox Code Playgroud)
为什么会出现此错误?
#1064 - You have an error in your SQL syntax; check the manual that corresponds
to your MySQL server version for the right syntax to use near
'VARCHAR(3)) AS Avg FROM ( ' at line 2
Run Code Online (Sandbox Code Playgroud)
这可能是由于MySQL错误#34564:CAST不接受varchar type。
尝试强制转换为其他类型,如下所示:
CAST(ROUND(AVG(Signups),2) AS CHAR(3)) AS Avg
Run Code Online (Sandbox Code Playgroud)