Mysql中根據多個條件排序:(各個條件間使用逗號隔開)
首先根據class_name字符串長短升序排列,然后根據開始時間降序排列:
- SELECT * FROM signup_class s ORDER BY IFNULL(length(trim(s.class_name)),0) ASC,s.date_start DESC
注釋:
trim(s.class_name):去除字符串中的空格
length(trim(s.class_name):去除空格后字符串長度
ifnull(expr1,expr2):如果不是空,取expr1;如果是空,取expr2
asc:升序進行排序;
desc:降序進行排序。
length(trim(s.class_name):去除空格后字符串長度
ifnull(expr1,expr2):如果不是空,取expr1;如果是空,取expr2
asc:升序進行排序;
desc:降序進行排序。