时间:2021-05-24
问题描述
大家都知道, MySQL 中按某字段升序排列的 SQL 为 (以 id 为例,下同):
SELECT * FROM `MyTable`
WHERE `id` IN (1, 7, 3, 5)
ORDER BY `id` ASC
降序排列的 SQL 为:
SELECT * FROM `MyTable`
WHERE `id` IN (1, 7, 3, 5)
ORDER BY `id` DESC
有时以上排序并不能满足我们的需求。 例如, 我们想要按 id 以 5, 3, 7, 1 的顺序排列, 该如何实现。 这也是很多国内外同行经常遇到的问题之一。
下面我们给出按表中某字段, 以我们想要的列表方式排序的解决方案。
解决方案
用"按字段排序" (ORDER BY FIELD).
语法
ORDER BY FIELD(`id`, 5, 3, 7, 1)
要注意的是,FIELD 后面是没有空格的。
因此, 完整的 SQL 为:
SELECT * FROM `MyTable`
WHERE `id` IN (1, 7, 3, 5)
ORDER BY FIELD(`id`, 5, 3, 7, 1)
常见应用
SELECT * FROM `MyTable`
WHERE `name` IN ('张三', '李四', '王五', '孙六')
ORDER BY FIELD(`name`, '李四', '孙六', '张三', '王五')
以上这篇MySQL 按指定字段自定义列表排序的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
帝国CMS6.0的会员列表功能新增了自定义字段搜索。今天我们就专门来讲解6.0的会员自定义字段搜索。使用会员搜索自定义字段说明:默认支持搜索username字段
本文实例讲述了php自定义函数实现二维数组按指定key排序的方法。分享给大家供大家参考,具体如下:二维数组官方的排序方法并不好,该函数可以进行指定key的排序,
织梦默认的自定义字段调用是没有长度限制的,但是我们有些时候在列表页或者首页调用的时候就需要将自定义字段的长度限制一下,这样方便布局。下面就告诉大家限制自定义字段
最近有个客户用的是织梦的后台,需要修改tag列表页调用自定义字段,然后在网上找了半天没有tag列表,如何调用自定义字段的文章,所以本人自己就研究了下!制作步
自定义列表一、自定义列表功能说明自定义列表功能:除了系统内置固定的栏目页、专题页等列表页面外,用户还可以通过SQL条件生成相应信息列表页面,实现各种信息集合列表