为了账号安全,请及时绑定邮箱和手机立即绑定

MySQL数据库数据怎么实现排序输出?

MySQL数据库数据怎么实现排序输出?

尚方宝剑之说 2019-04-03 10:01:10
100米成绩表(id,name,mark,rank);怎么实现排序输出.比如:id name mark rank1 张三 12秒00 2 李四 11秒97 3 王五 13秒00怎么实现安排mark的顺序输出,并填入排名(rank)这种效果:1 李四 11秒97 12 张三 12秒0 23 王五 13秒00 3采纳加分
查看完整描述

2 回答

?
守着一只汪

TA贡献1872条经验 获得超3个赞

MySQL中排序输出需要用order by。

如图,test表中有如下数据:

现在分别要求按ID正序和倒序输出结果。

正序:

1select from test order by id;

结果:

倒序:

1select from test order by id desc;

结果:



 


查看完整回答
反对 回复 2019-04-04
?
慕尼黑8549860

TA贡献1818条经验 获得超11个赞

select * from 百米成绩表 order by mark asc
order by 的意思是排序,你的mark应该是一个字符串类型的字段(如果是oracle的话应该是varchar2) order by 跟的是一个字段,意思是按照这个字段进行排序,字符串的排序,会挨个比对第一个字符,然后第二个字符,然后以此类推,asc 是代表正序,就是小的在上,desc是倒序,
不过这里存在问题,如果秒数都是两位数倒是好说,但是如果秒数是1位数 比如9秒00 那么在第二位排序的时候就会用秒字跟其他数字相比较,会出问题的,建议规范格式,强制要求秒数位数固定,或者干脆这个字段用数字来代替,比如11秒97,让他秒数变成1197,数字比大小是不会出现问题的。

查看完整回答
反对 回复 2019-04-04
  • 2 回答
  • 0 关注
  • 667 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信