当前位置: 首页 > news >正文

MySQL------自定义排序

1、MySQL函数 field() 实现自定义

语法: SELECT * from table_name ORDER BY FIELD(str,str1,str2,str3,…)
str: 字段名,
str1,str2,str3: 自定义排序的数值

例1排序-所有值:
先姓名排序后出生日期排序

SELECT * from name_info ORDER BY FIELD(name,"张三","小明","小刘"),date_birth

例2排序-部分值:
张三,小明排序后,其余姓名按照出生日期排序

SELECT * from name_info ORDER BY FIELD(name,"张三","小明"),date_birth

2、MySQL函数Locate()

功能:判断字符串中是否包含字符串
语法:SELECT * from table_name WHERE LOCATE(substr, str, startPos)
LOCATE(substr, str, startPos)

substr:必需的。 在 str 中搜索的子串。
str:必需的。 被搜索的字符串。
startPos:可选的。 在 str 中开始搜索的位置,从 1 开始。
返回值:LOCATE() 函数返回子字符串 substr 在字符串 str 中的位置的数字索引。数字索引从 1 开始。如果在 str 中找不到 substr,LOCATE() 函数将返回 0。

例:
locate函数返回的是substr在str的位置

SELECT * from name_info ORDER BY LOCATE(name,"张三,小明,小刘")

3、MySQL case(when)

语法:

CASE value
WHEN compare_value THEN result
[WHEN compare_value THEN result ...]
[ELSE result]
END

value:可选
CASE 语句返回 condition 为真或者 value = compare_value 为真的 THEN 子句中指定的值。
例:

SELECT name  from name_info 
order by 
case name 
when "张三" then 1 
when "小明" then 2 
when "小刘" then 3 
else 0 
end

使用case when 将字段中的张三,小明,小刘转换为1,2,3,这样在我们再使用order by实现数据的自定义重排

http://www.lryc.cn/news/15344.html

相关文章:

  • FFMPEG自学二 ⾳频编码实战
  • ​一致魔芋在北交所上市:市值突破11亿元,吴平夫妇为实控人​
  • 进程或线程终止是否会释放锁
  • mysql复制表提示某些为null字段无效
  • 【数据库】redis 配置文件与发布订阅
  • ChatGPT来了,英语不能丢,但我不想上班
  • 【LeetCode】二叉树的直径 [E](二叉树)
  • Mybatis框架详解(全)
  • 2023年爆火的csgo搬砖项目详细拆解,steam搬砖长期稳定
  • C语言实现动态管理通讯录信息系统(静态通讯录plus版)
  • 核心技术: springboot 启动类加载时方法执行的几种实现方式, bean声明周期, 启动执行顺序
  • 拒绝背锅:测试项目中的风险管理一定要知道
  • 20-js本地存储
  • ABAP 辨析ON INPUT|REQUEST|CHAIN-INPUT|CHAIN-REQUEST
  • LeetCode:逆波兰式;
  • 为什么阳康后,感觉自己变傻了?
  • 考公和大厂40万年薪的offer,选哪个?
  • 多线程环境下调用 HttpWebRequest 并发连接限制
  • vue3-element-admin搭建
  • 蓝海创意云vLive虚拟直播亮相2023昆山元宇宙产品展览会
  • ThreadLocal线程变量
  • 【linux安装redis详解】小白如何安装部署redis,linux安装部署只需5步骤(图文结合,亲测有效)
  • 2023只会“点点点”,被裁只是时间问题,高薪的自动化测试需要掌握那些技能?
  • C语言【柔性数组】
  • AcWing275. 传纸条
  • 圆角矩形的绘制和曲线均匀化
  • 【Linux】环境变量,命令行参数,main函数三个参数保姆教学
  • 美国访问学者生活中有哪些饮食文化特点?
  • RxJava中的Subject
  • vue-element-admin在git 上 clone 之后无法install