Mã này hoạt động:(lưu ý rằng khoảng trắng bị xóa sau "CAST")
SELECT CAST(20091023 as date);
Hóa ra MySQL yêu cầu một danh sách cụ thể các hàm dựng sẵn không có khoảng trắng giữa tên hàm và dấu ngoặc đơn. Xem trang này trong Hướng dẫn sử dụng MySQL để biết thêm thông tin về lý do tồn tại hành vi này.
Danh sách các hàm sau có cùng một hạn chế trong MySQL 5.1 (có nhiều chức năng khác trong các phiên bản trước):
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
Hy vọng câu trả lời này sẽ giúp bạn tránh lãng phí khoảng thời gian tương tự như tôi đã làm cho việc này! :-)