我希望以特定的方式订购数据,我已经明确地列出了我想首先出现的字段。基本上,我希望通过做一些我想象的事情来返回MySQL查询:
ORDER BY
FIELD(brand,'toyota','honda','ford'),
FIELD(type, 'SUV', 'Sedan', 'Coupe'),
FIELD(transmission, 'manual', 'automatic', 'cvt')
简单地说我正在寻找一种基于多个领域专门订购东西的方法。我已经尝试过这样但它似乎没有用。甚至可以这样做,或者在我指定一个字段的顺序之后我是否只能通过ASC或DESC订购其他东西?
感谢您的帮助!
答案 0 :(得分:1)
也许是这样的?
SELECT brand, type, transmission
FROM tablename
ORDER BY
case brand
when 'toyota' then 1
when 'honda' then 2
when 'ford' then 3
end ASC,
case type
when 'SUV' then 1
when 'Sedan' then 2
when 'Coupe' then 3
end ASC,
case transmission
when 'manual' then 1
when 'automatic' then 2
when 'cvt' then 3
end ASC