关于mysql进行升序排序时null排在后面

有表结构为:

CREATE TABLE `web_turnover_count` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `create_time` datetime DEFAULT NULL COMMENT '数据创建时间',
  `ranking_postion_now` varchar(256) DEFAULT NULL COMMENT '当前排行名次',
  `bonds_code` varchar(256) DEFAULT NULL COMMENT '代码',
  `bonds_name` varchar(256) DEFAULT NULL COMMENT '名字',
  `shares_code` varchar(256) DEFAULT NULL COMMENT '代码',
  `shares_name` varchar(256) DEFAULT NULL COMMENT '名字',
  `amount` varchar(256) DEFAULT NULL COMMENT '统计次数合计',
  `ranking_1st` varchar(256) DEFAULT NULL COMMENT '排第一名次数',
  `ranking_2nd` varchar(256) DEFAULT NULL COMMENT '排第2名次数',
  `ranking_3rd` varchar(256) DEFAULT NULL COMMENT '排第3名次数',
  `ranking_4th` varchar(256) DEFAULT NULL COMMENT '排第4名次数',
  `ranking_5th` varchar(256) DEFAULT NULL COMMENT '排第5名次数',
  `ranking_6th` varchar(256) DEFAULT NULL COMMENT '排第6名次数',
  `ranking_7th` varchar(256) DEFAULT NULL COMMENT '排第7名次数',
  `ranking_8th` varchar(256) DEFAULT NULL COMMENT '排第8名次数',
  `ranking_9th` varchar(256) DEFAULT NULL COMMENT '排第9名次数',
  `ranking_10th` varchar(256) DEFAULT NULL COMMENT '排第10名次数',
  PRIMARY KEY (`id`),
  KEY `ix_web_turnover_count_create_time` (`create_time`)
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8;

需要对 ranking_postion_now字段进行升序排序其中有部分为值为null,mysql的写法是

SELECT * FROM `web_turnover_count` ORDER BY FIELD(ranking_postion_now,0),CONVERT(ranking_postion_now,SIGNED),into_count desc

其结果为下图的排序 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ttxx12345

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值