首页 > 数据库 >mysql模糊查询通过排序调整精准值

mysql模糊查询通过排序调整精准值

时间:2024-09-03 17:16:50浏览次数:9  
标签:keyword 查询 mysql 排序 id 精准 DESC

背景:通过模糊查询到的结果,精准值排在后面

解决:通过调整字段排序

select * from user where 1=1
<if test="keyword != null and keyword != ''">
    and name like concat('%', #{keyword}, '%')
</if>
<if test="sort == 1 and (keyword == null or keyword == '')">
            ORDER BY status DESC, id
 </if>
<if test="sort == 1 and keyword != null and keyword != ''">
            ORDER BY (name = #{keyword}) DESC, status DESC, id
</if>
limit #{offset},10;

这条SQL语句首先使用了Like查询操作符查询出所有包含keyword字符的信息,然后使用Order By对查询结果进行排序。排序方式是先按照“是否包含精确匹配的结果”进行排序(使用DESC关键字是为了将包含“keyword”的结果排在前面),然后按照stauts,id进行排序。

标签:keyword,查询,mysql,排序,id,精准,DESC
From: https://www.cnblogs.com/cgy-home/p/18394977

相关文章

  • MySQL like用法详解
    MySQLLIKE语法LIKE运算符用于WHERE表达式中,以搜索匹配字段中的指定内容,语法如下:WHEREcolumnLIKEpatternWHEREcolumnNOTLIKEpattern在LIKE全面加上NOT运算符时,表示与LIKE相反的意思,即选择column不包含pattern的数据记录LIKE通常与通配符%一起使用,%表示通配pattern中出现的......
  • Windows下安装MySQL详细教程
    Windows下安装MySQL详细教程1、安装包下载  2、安装教程(1)配置环境变量(2)生成data文件(3)安装MySQL(4)启动服务(5)登录MySQL(6)查询用户密码(7)设置修改用户密码(8)退出 3、解决问题1、安装包下载。下载地......
  • MySQL修改密码
    第一种方式:最简单的方法就是借助第三方工具NavicatforMySQL来修改,方法如下:1、登录mysql到指定库,如:登录到test库。2、然后点击上方“用户”按钮。3、选择要更改的用户名,然后点击上方的“编辑用户”按钮。4、出现如图界面,输入新密码,并确认新密码,点击“保存”按钮即可。   第二种......
  • MySQL索引底层实现原理
    索引的本质MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。提取句子主干,就可以得到索引的本质:索引是数据结构。我们知道,数据库查询是数据库的最主要功能之一。我们都希望查询数据的速度能尽可能的快,因此数据库系统的设计者会从查询算法的角度进行优化。最基......
  • MySQL之mysqldump的使用详解
    一、mysqldump简介mysqldump 是 MySQL 自带的逻辑备份工具。它的备份原理是通过协议连接到 MySQL 数据库,将需要备份的数据查询出来,将查询出的数据转换成对应的insert 语句,当我们需要还原这些数据时,只要执行这些 insert 语句,即可将对应的数据还原。二、备份命令2.1命令格......
  • mysql查询历史执行sql记录
    1、查看正在执行的sql--切换数据库useinformation_schema;--查看正在执行的SQL语句showprocesslist;--或者直接使用SQL语句查询select*frominformation_schema.`PROCESSLIST`whereinfoisnotnull;2、开启日志模式,记录所有SQL语句执行记录首先查看日志是否开启了......
  • Hive整合MySQL
     目录Hive整合MySQL 安装MySQL1)上传MySQL安装包以及MySQL驱动jar包2)解压MySQL安装包3)卸载系统自带的mariadb4)安装MySQL依赖5)安装mysql-client6)安装mysql-server7)启动MySQL8)查看MySQL密码配置MySQL1)用刚刚查到的密码进入MySQL(如果报错,给密码加单引号)2)设置复杂密......
  • Qt配置Mysql环境(Mingw版本)
    前言之所以写这篇文章,是由于本人被这个环境配置搞得心态搞炸了,网上的教程层出不穷,我也坚信很多还没有配置出来的小伙伴一定是照着有些教程一步一步来的,但就是死活不行,别人就行,自己的就不行。不说废话了,直接上教程。首先要确定你的Mysql和你的Mingw的位数是对的上的,要是32......
  • 20240903_162154 mysql 填空题 分组与聚合
    查询tb表所有数据,结果按age升序排select*fromtborderbyageasc查询tb表所有数据,结果按score降序排序select*fromtborderbyscoredesc查询tb表所有数据,结果按age升序排,如果age相同的数据,按score降序排select*fromtborderbyageasc,scoredesc查询sanguo表,......
  • Linux下MySQL5.7安装步骤
    1、更新软件包列表apt-getupdate2、查看系统默认安装的数据库版本apt-cachepolicymysql-server3、需要安装mysql5.7的版本就需要换源养成习惯,先备份文件:cp/etc/apt/sources.list/etc/apt/sources.list.back然后更换apt源:修改sources.list文件vim/etc/apt/sour......