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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL数据库数据怎么实现排序输出?相关的知识,希望对你有一定的参考价值。

100米成绩表(id,name,mark,rank);怎么实现排序输出.比如:
id name mark rank
1 张三 12秒00

2 李四 11秒97

3 王五 13秒00
怎么实现安排mark的顺序输出,并填入排名(rank)
这种效果:

1 李四 11秒97 1
2 张三 12秒0 2

3 王五 13秒00 3
采纳加分

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

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

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

正序:

select * from test order by id;

结果:

倒序:

select * from test order by id desc;

结果:

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

mysql100条数据,想删除前20条怎么搞

参考技术A 在mysql中可以通过“delete from table_name where 1=1 order by order_name limit 20;”方法删除前20行数据。
删除前20条数据,肯定是首先需要排序,然后再删除前20条数据。delete from table_name where 1=1 order by order_name limit 20;其中table_name是你希望删除数据的所在表表名,order_name 是你希望按照哪个字段来进行排序的字段名,如果是用系统自动默认的排序,order by order_name 这部分可以不写。
MySQL就是结构化数据的集合,同时也是数据库的管理系统,目前MySQL算是比较流行的数据库之一,在web方面,MySQL也是最好的应用软件,和其他的主流操作系统相互兼容。

以上是关于MySQL数据库数据怎么实现排序输出?的主要内容,如果未能解决你的问题,请参考以下文章

数据库默认的排序规则是怎样的 还有 如果按照我想要的方式做排序要怎么写

sql数据库怎么实现分组并取每组的前1条语句,按日期排序?

mysql数据库怎么可以两个条件排序?

关于mysql数据库排序的问题

mysql 数据库查询 按时间排序 如果时间一样 按主键排序怎么写 在一张表里

php按照运算结果排序输出的问题