服务器之家

服务器之家 > 正文

mysql指定某行或者某列的排序实现方法

时间:2020-07-29 17:18     来源/作者:MYSQL教程网

mysql指定某行或者某列的排序实现方法

方法:

通过desc:

mysql指定某行或者某列的排序实现方法

mysql指定某行或者某列的排序实现方法

都无法实现:

方法一:

mysql指定某行或者某列的排序实现方法

?
1
2
3
4
5
select sp.productid,sp.productname,ss.sku from sp_product sp inner join sku_skus ss on sp.productid=ss.productid
where sp.productname='力士恒久嫩肤娇肤香皂115g'
or sp.productname='佳洁士(Crest) 绿茶薄荷牙膏180克'
or sp.productname='心味果园 兰花豆 190g/袋 1袋 炒货豆制品休闲零食' order by (
case when sp.productid=11042723 then 1 ELSE 2 END)

方法二:

mysql指定某行或者某列的排序实现方法

核心sql

?
1
2
3
4
select sp.productid,sp.productname,ss.sku from sp_product sp inner join sku_skus ss on sp.productid=ss.productid
where sp.productname='力士恒久嫩肤娇肤香皂115g'
or sp.productname='佳洁士(Crest) 绿茶薄荷牙膏180克'
or sp.productname='心味果园 兰花豆 190g/袋 1袋 炒货豆制品休闲零食' ORDER BY sp.productid not in(11042723)

Mysql:把指定数据行排在前面
 
如果只是一条数据行,可以这样:

?
1
SELECT * FROM user ORDER BY user_id<>7,score DESC;

主要是“user_id<>7”,就会把用户id为7的排在前面。
 
如果是多条数据行:

?
1
SELECT * FROM user ORDER BY user_id NOT IN(7,8,9),score DESC;

mysql 某列指定值靠前排序
 
单个列靠前排序:
mysql 某列指定值靠前排序  order by case

?
1
2
SELECT * FROM `jcxsw`.`t_company_product` order by (
case when id=263 then 1 ELSE 4 END),category_id desc;

这段sql代码 会先排列id =263的额数据 然后 根据category_id倒叙
 
多个列靠前排序:

?
1
2
3
SELECT * FROM `web_membersfastsort_women` m order by
m.province<>'10106000' , m.city<>'10106001' ,m.city desc,m.province
desc,m.s_cid asc, m.images_ischeck desc,m.pic_num desc limit 2000,30

province =10106000 的 靠前排,在province = 10106000 中   city=10106001 的靠前排

标签:

相关文章

热门资讯

2022年最旺的微信头像大全 微信头像2022年最新版图片
2022年最旺的微信头像大全 微信头像2022年最新版图片 2022-01-10
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整 2021-08-24
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
暖暖日本高清免费中文 暖暖在线观看免费完整版韩国
暖暖日本高清免费中文 暖暖在线观看免费完整版韩国 2021-05-08
返回顶部