博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql数据库对字段自定义排序的应用
阅读量:7153 次
发布时间:2019-06-29

本文共 1810 字,大约阅读时间需要 6 分钟。

之前做项目 有个需求是

二手租房按照 房租价格 从低到高排序,面议的价格要在最后显示出来

因为数据库中 面议 的价格(price)是(-1,0)

如果按照从低到高,面议的价格就会显示在最前面了,这不是项目需求要的。

所以要写一个自定义的排序。

MySQL 中 field自定义排序函数的格式

order by field(value,str1,str2,str3,str4,,,,,,strn)

其中value后面的参数自定义,不限制参数个数

含义

将获取出来的数据根据str1,str2,str3,str4等的顺序排序

 

--------------------------------------------------------------------------------------------------

 

SELECT

`quan_post`.`id`,
`quan_post`.`is_large`,
`welife_center`.`city`.`name` AS `city_name`,
`level_id`,
`cate_id`,
`quan_topic`.`title` AS `topic_title`,
`quan_post_second`.`img_list`,
`price_market`,
`quan_post_second`.`type` AS `second_type`,
`price`,
`quan_post`.`anony`,
`welife_system`.`user_wechat`.`sex`,
`welife_system`.`user_wechat`.`nickname`,
`quan_post_second`.`realname`,
`welife_system`.`user_wechat`.`avatar`,
`welife_system`.`user_wechat`.`has_auth`,
`welife_system`.`user_wechat`.`auth_info`,
`quan_post`.`type`,
`is_essence`,
`quan_post`.`title`,
`quan_post`.`content`,
`quan_post`.`num_view`,
`quan_post`.`create_at`
FROM
`welife_quan`.`quan_post`
LEFT JOIN `quan_topic` ON quan_topic.id = quan_post.topic_id
LEFT JOIN `welife_system`.`user_wechat` ON welife_system.user_wechat.unionid = welife_quan.quan_post.user_id
LEFT JOIN `quan_post_second` ON quan_post_second.pid = quan_post.id
LEFT JOIN `welife_center`.`city` ON welife_center.city.id = welife_quan.quan_post.city_id
WHERE
(`quan_post`.`type` = 1)
AND (`is_draft` = 0)
AND (
`quan_post_second`.`type` = '0'
)
AND (`quan_post`.`status` = 1)
AND (`quan_post`.`status` != 3)
AND (`quan_post`.`status` != 2)
AND (`quan_post`.`status` != 4)
ORDER BY
FIELD(
quan_post_second.price,
- 1,
0
),
`quan_post_second`.`price`,
`quan_post`.`sort` DESC,
`quan_post`.`last_comment_time` DESC,
`quan_post`.`create_at` DESC
LIMIT 30

 

转载于:https://www.cnblogs.com/wangshuazi/p/9831636.html

你可能感兴趣的文章
你不知道的互联网金融的大众特征性
查看>>
Linux系统里如何彻底清空终端屏幕
查看>>
PostgreSQL获取表的Size
查看>>
UA2015年第二学期的目标
查看>>
DELL R730 Raid配置
查看>>
jdk1.8 lambda表达式过滤重复的对象
查看>>
wincp连接linux异常关闭
查看>>
使用Gradle构建工具开发Kotlin Web应用程序
查看>>
vmware测试环境虚拟机模板
查看>>
vsphere client 无法连接Vcenter主机
查看>>
Windows 2008 防火墙开放端口
查看>>
Highcharts-4.1.7使用实例(关键部分代码)
查看>>
PHP字符串分离、截取函数(explod)
查看>>
我的友情链接
查看>>
因特尔和谷歌合作优化Android
查看>>
Windows 7 部署工具DISM学习(二)--添加补丁
查看>>
2012ftp和website配置
查看>>
我的友情链接
查看>>
又可以访问 OSC 主站啦
查看>>
Oschat IM 开源即时通讯项目介绍
查看>>