发布于 2017-06-08 05:28:17 | 100 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的Mysql教程,程序狗速度看过来!

Mysql关系型数据库管理系统

MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司。MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。


这篇文章主要介绍了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 的靠前排



最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务