
方法:
通過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 的靠前排
您可能感興趣的文章:- MySQL中將一列以逗號分隔的值行轉列的實現
- 當Mysql行鎖遇到復合主鍵與多列索引詳解
- Mysql 相鄰兩行記錄某列的差值方法
- mysql 列轉行,合并字段的方法(必看)
- mysql列轉行以及年月分組實例
- mysql 列轉行的技巧(分享)
- mysql 行轉列和列轉行實例詳解
- mysql 行列動態轉換的實現(列聯表,交叉表)
- 數據庫實現行列轉換(mysql示例)
- MySQL 中行轉列的方法