关于mysql数据库排序的问题

关于mysql数据库排序的问题,第1张

那要看你的表是怎么构建的

一般这汇总情况我认为

你的id应该是自增的吧

如果是自增

那么

插入一个数据的话

就是id等于4的那个行

你的

desc字段应该就是

用来

排序用的吧

那么

在前台

你可以

做一个input框(每行后边都有个input框)

目的就是为了

排序你的数据

在这种情况下

就不需要改动什么字段了吧

唯一需要改动的字段内容

就是

更新

desc的字段就可以了吧

打个比方

原来是这样的

id

name

desc

1

a

0

2

c

3(改动)

3

b

2(改动)

4

d

1(追加在a后)

修改后

name

a

b

c

d

这么排列

id

name

desc

1

a

0

3

b

1

2

c

2

4

d

3

这是在前台显示的内容

在数据库里

你可以看到实际上

改变的

只有

desc

后边的

0

1

2

3

这几个

而数据库的表中

实际数据的位置是不会发生变化

其实你不用担心什么数据量过多的问题

在插入新的数据的时候

就让他的desc值默认是最大的

也就是最后一位显示

在MySQL中,可以指定按照多个字段进行排序。例如,可以使employee表按照d_id字段和age字段进行排序。排序过程中,先按照d_id字段进行排序,遇到d_id字段的值相等的情况时,再把d_id值相等的记录按照age字段进行排序。

查询employee表中的所有记录,按照d_id字段的降序方式和age字段的升序方式进行排序。

在执行查询结果时,默认情况下查询结果无序排列。但我们有时需要对数据按一定规则进行排序。这时可以通过ORDER BY子句来实现这个功能。语法如下:

SELECT <*,column [alias],...> FROM table

[WHERE condition(s)]

[ORDER BY column[ASC|DESC]];

默认是ASC指定的升序排列,DESC用来指定降序排列。

1、升序排序:

使用ORDER BY子句时,默认情况下数据是按升序排列的,故可以用ASC关键字指点升序排列,或者不指定,默认就是升序,显示效果是一样的,如下图:

2、降序排序:

当需要查询结果降序排列时,必须在排序后指定DESC关键字。如下图是查看职员薪水的降序排列:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7393929.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-05
下一篇 2023-04-05

发表评论

登录后才能评论

评论列表(0条)

保存