Ten kod działa:(zwróć uwagę, że spacja jest usuwana po „CAST”)
SELECT CAST(20091023 as date);
Okazuje się, że MySQL wymaga, aby określona lista funkcji wbudowanych nie zawierała spacji między nazwą funkcji a nawiasem. Zobacz tę stronę w podręczniku MySQL aby uzyskać więcej informacji o przyczynach takiego zachowania.
Poniższa lista funkcji ma takie same ograniczenia w MySQL 5.1 (w poprzednich wersjach jest ich znacznie więcej):
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
Mam nadzieję, że ta odpowiedź pomoże ci uniknąć marnowania tyle samo czasu, co ja na to! :-)