程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> mysql指定某行或者某列的排序實現方法

mysql指定某行或者某列的排序實現方法

編輯:MySQL綜合教程

mysql指定某行或者某列的排序實現方法。本站提示廣大學習愛好者:(mysql指定某行或者某列的排序實現方法)文章只能為提供參考,不一定能成為您想要的結果。以下是mysql指定某行或者某列的排序實現方法正文


mysql指定某行或者某列的排序實現方法

投稿:mdxy-dxy

這篇文章主要介紹了mysql指定某行或者某列的排序,需要的朋友可以參考下

方法:

通過desc:

都無法實現:

方法一:

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)

方法二:

核心sql

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:把指定數據行排在前面
 
如果只是一條數據行,可以這樣:

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

主要是“user_id<>7”,就會把用戶id為7的排在前面。
 
如果是多條數據行:

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

mysql 某列指定值靠前排序
 
單個列靠前排序:
mysql 某列指定值靠前排序  order by case

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倒敘
 
多個列靠前排序:

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 的靠前排

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved