文档章节

MySql通过in查询怎样排序问题

swingcoder
 swingcoder
发布于 2016/04/25 13:04
字数 175
阅读 47
收藏 0

mysql里通常用field in语句查询时,排序会使用field来排序,但事实上一般是要用in(...)里面的条件来排序的,比如按地址位置查询周边产品时,要根据in里面的条件排序,可以使用

方法一、order by substring_index方式进行排序。


SELECT groupon_id FROM csq_groupon_2_poi WHERE poi_id in (56736,56713,56669,56920,56666,56667,56668,56228,56689,56738,56691,56732,56018,56185,56195) order by  substring_index('56736,56713,56669,56920,56666,56667,56668,56228,56689,56738,56691,56732,56018,56185,56195',poi_id,1)


SELECT groupon_id FROM csq_groupon_2_poi WHERE poi_id in (56736,56713,56669,56920,56666,56667,56668,56228,56689,56738,56691,56732,56018,56185,56195) order by  substring_index('56736,56713,56669,56920,56666,56667,56668,56228,56689,56738,56691,56732,56018,56185,56195',poi_id,1)

方法二、order by find_in_set

SELECT groupon_id,poi_id FROM csq_groupon_2_poi WHERE poi_id in (56736,56713,56669,56920,56666,56667,56668,56228,56689,56738,56691,56732,56018,56185,56195) order by  FIND_IN_SET(poi_id,'56736,56713,56669,56920,56666,56667,56668,56228,56689,56738,56691,56732,56018,56185,56195')


SELECT groupon_id,poi_id FROM csq_groupon_2_poi WHERE poi_id in (56736,56713,56669,56920,56666,56667,56668,56228,56689,56738,56691,56732,56018,56185,56195) order by  FIND_IN_SET(poi_id,'56736,56713,56669,56920,56666,56667,56668,56228,56689,56738,56691,56732,56018,56185,56195')


© 著作权归作者所有

swingcoder
粉丝 33
博文 332
码字总数 75140
作品 0
广州
技术主管
私信 提问
Mybatis resultMap 排序问题

springMvc + Mybatis + Mysql 做的一个web项目 一个查询并按 生成时间(sg.create_time)和 单号(sg.send_code)排序的接口,直接执行sql语句结果排序是一致,但是通过resultMap返回到页面的...

明日_边缘
2017/10/10
792
10
☆MySQL order by limit 分页数据重复问题

0 问题描述 在MySQL中我们通常会采用limit来进行翻页查询,比如limit(0,10)表示列出第一页的10条数据,limit(10,10)表示列出第二页。但是,当limit遇到order by的时候,可能会出现翻到第二页...

猿码道
2018/05/14
0
0
Oracle和Mysql语法异同整理笔记

@[toc] 最近在做项目迁移,Oracle版本的迁到Mysql版本,遇到有些oracle的函数,mysql并没有,所以就只好想自定义函数或者找到替换函数的方法进行改造。 所以本博客主要介绍Oracle兼容mysql改...

smileNicky
02/16
0
0
SQL 查询语句中in与not in查出来的条数不是互补的

一、in与not in不是互补的 SQL 查询语句中in与not in查出来的条数不是互补,即用in查出来的条数不等于总数减去not in查出来的条数。 例如:数据库表中有10条记录,用select count() from per...

谢思华
2013/12/11
852
2
如何设置搜索排序,多关键词先输入的排前面?

各路大神: 题主用Sphinx+MariaDB+Python 做个搜索功能,遇到排序问题: 比如依次输入:'开心 快乐 幸福', 进行搜索,假设全部命中,怎样让搜索的结果: 全部命中的显示最前; 其次显示命中...

hlStack
2017/11/26
142
1

没有更多内容

加载失败,请刷新页面

加载更多

最简单的获取相机拍照的图片

  import android.content.Intent;import android.graphics.Bitmap;import android.os.Bundle;import android.os.Environment;import android.provider.MediaStore;import andr......

MrLins
11分钟前
0
0
说好不哭!数据可视化深度干货,前端开发下一个涨薪点在这里~

随着互联网在各行各业的影响不断深入,数据规模越来越大,各企业也越来越重视数据的价值。作为一家专业的数据智能公司,个推从消息推送服务起家,经过多年的持续耕耘,积累沉淀了海量数据,在...

个推
13分钟前
2
0
第三方支付-返回与回调注意事项

不管是支付宝,微信,还是其它第三方支付,第四方支付,支付机构服务商只要涉及到钱的交易都要进行如下校验,全部成功了才视为成功订单 1.http请求是否成功 2.校验商户号 3.校验订单号及状态...

Shingfi
15分钟前
1
0
简述Java内存分配和回收策略以及Minor GC 和 Major GC(Full GC)

内存分配: 1. 栈区:栈可分为Java虚拟机和本地方法栈 2. 堆区:堆被所有线程共享,在虚拟机启动时创建,是唯一的目的是存放对象实例,是gc的主要区域。通常可分为两个区块年轻代和年老代。更...

DustinChan
21分钟前
3
0
Excel插入批注:可在批注插入文字、形状、图片

1.批注一直显示:审阅选项卡-------->勾选显示批注选项: 2.插入批注快捷键:Shift+F2 组合键 3.在批注中插入图片:鼠标右键点击批注框的小圆点【重点不可以在批注文本框内点击】----->调出批...

东方墨天
45分钟前
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部