Mysql案例语法

mas*_*man 5 php mysql

SELECT *
FROM case_study
ORDER BY CASE WHEN expiry_date_case > CURDATE() THEN 1 END
WHEN expiry_date_case IS NULL THEN 2 Desc END
WHEN expire_date_case < CURDATE() THEN 3 Desc END;
Run Code Online (Sandbox Code Playgroud)

当我尝试运行此查询时,我收到错误

#1064 - 您的SQL语法有错误; 查看与您的MySQL服务器版本对应的手册,以便在'WHEN expiry_date_case附近使用正确的语法IS NULL THEN 2 Desc END when expire_date_case <CURDATE()'在第4行


我在哪里做错了?

Fre*_*red 3

尝试

SELECT *
FROM case_study
ORDER BY CASE WHEN expiry_date_case > CURDATE() THEN 1 
WHEN expiry_date_case IS NULL THEN 2 
WHEN expire_date_case < CURDATE() THEN 3 END Desc
Run Code Online (Sandbox Code Playgroud)

你有太多的End和太多desc