MySQL 中 FIELD() 自定义排序
在 MySQL 中,你可以使用 ORDER BY FIELD()
来自定义排序顺序。这个函数允许你指定字段的自定义排序顺序,而不是默认的升序或降序排序。以下是一个简单的例子:
假设你有一个表格叫做 products
,其中有一个字段叫做 category
,你想按照特定的类别顺序进行排序,比如 'Electronics', 'Clothing', 'Books'
,你可以这样做:
SELECT * FROM products
ORDER BY FIELD(category, 'Electronics', 'Clothing', 'Books');
这个查询会按照 'Electronics'
、'Clothing'
和 'Books'
的顺序来排序 category
字段。
你也可以结合其他的排序条件,比如:
SELECT * FROM products
ORDER BY FIELD(category, 'Electronics', 'Clothing', 'Books'), price ASC;
这个查询会先按照指定的类别顺序排序,然后在每个类别内按照价格升序排序。