mysql排序规则怎么改 mysql修改表的排序规则

如何根据MYSQL数据库中的某一个字段进行排序?

先把分类全取出来,并随机排序,取排在第一个分类。

创新互联公司于2013年创立,先为宁海等服务建站,宁海等地企业,进行企业商务咨询服务。为宁海企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

例如:西装

然后查询的时候 order by (category='西装') desc,category 即可实现要求。

MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。

由于MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。

MySQL这个名字,起源不是很明确。一个比较有影响的说法是,基本指南和大量的库和工具带有前缀“my”已经有10年以上,而且不管怎样,MySQL AB创始人之一的Monty Widenius的女儿也叫My。这两个到底是哪一个给出了MySQL这个名字至今依然是个迷,包括开发者在内也不知道。

MySQL的海豚标志的名字叫“sakila”,它是由MySQL AB的创始人从用户在“海豚命名”的竞赛中建议的大量的名字表中选出的。获胜的名字是由来自非洲斯威士兰的开源软件开发者Ambrose Twebaze提供。根据Ambrose所说,Sakila来自一种叫SiSwati的斯威士兰方言,也是在Ambrose的家乡乌干达附近的坦桑尼亚的Arusha的一个小镇的名字。

MySQL,虽然功能未必很强大,但因为它的开源、广泛传播,导致很多人都了解到这个数据库。它的历史也富有传奇性。

关于mysql数据库排序的问题

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

一般这汇总情况我认为

你的id应该是自增的吧

如果是自增

那么

插入一个数据的话

就是id等于4的那个行

你的

desc字段应该就是

用来

排序用的吧

那么

在前台

你可以

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

目的就是为了

排序你的数据

在这种情况下

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

唯一需要改动的字段内容

就是

更新

desc的字段就可以了吧

打个比方

原来是这样的

id

name

desc

1

a

2

c

3(改动)

3

b

2(改动)

4

d

1(追加在a后)

修改后

name

a

b

c

d

这么排列

id

name

desc

1

a

3

b

1

2

c

2

4

d

3

这是在前台显示的内容

在数据库里

你可以看到实际上

改变的

只有

desc

后边的

1

2

3

这几个

而数据库的表中

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

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

在插入新的数据的时候

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

也就是最后一位显示

关于mysql排序

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

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

[WHERE condition(s)]

[ORDER BY column[ASC|DESC]];

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

1、升序排序:

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

2、降序排序:

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

如何用SQL语句修改字段的排序规则

创建数据表的时候,字段在表中的排列位置就已经确定了。不过,使用ALTER TABLE语句可以改变字段在表中的排列位置。

在MySQL中,修改字段排列位置的基本语法格式如下:

ALTER TABLE 表名 MODIFY 字段名1 数据类型 FIRST | AFTER 字段名2;

其中:

•字段名1:表示需要修改位置的字段的名称。

•数据类型:表示“字段名1”的数据类型。

•FIRST:指定位置为表的第一个位置。

•AFTER 字段名2:指定“字段名1”插入在“字段名2”之后。

MySQL字段修改到第一个位置

FIRST参数可以指定字段为表的第一个字段。

实例:将baike369表中的stu_name字段修改为该表的第一个字段。操作步骤如下:

1. 使用DESC语句查看baike369表的结构,以查看stu_name字段的排列位置。如下图所示:

查看stu_name字段的排列位置

从查询结果中可以看出,stu_ name字段为baike369表的第二个字段。

2. 将baike369表中的stu_name字段修改为该表的第一个字段。SQL代码如下:

ALTER TABLE baike369 MODIFY stu_name VARCHAR(30) FIRST;

在DOS提示符窗口中查看MySQL字段修改到第一个位置的操作效果。如下图所示:

在DOS提示符窗口中查看MySQL字段修改到第一个位置的操作效果

代码执行完毕,结果显示stu_name字段修改成功。

3. 使用DESC语句重新查看baike369表的结构,以检查stu_name字段在该表中的新位置。如下图所示:

检查stu_name字段在该表中的新位置

查询结果显示,stu_name字段已经成为了baike369表中的第一个字段,操作成功。

MySQL字段修改到指定位置

“AFTER 字段名2”参数可以将字段重新设置到表中指定的字段之后。

实例:将baike369表中num字段更改到address字段之后。操作步骤如下:

1. 从上图中可以看出,num字段排在address字段的前面。

2. 将baike369表中num字段更改到address字段之后。SQL代码如下:

ALTER TABLE baike369 MODIFY num INT(8) AFTER address;

在DOS提示符窗口中查看MySQL字段修改到指定位置的操作效果。如下图所示:

在DOS提示符窗口中查看MySQL字段修改到指定位置的操作效果

代码执行完毕,结果显示num字段修改成功。

3. 使用DESC语句重新查看baike369表的结构,以便检查num字段是否排在了address字段后面。如下图所示:

如何修改mysql数据库字符集和排序规则属性

vi /etc/my.cnf

在[client]下添加

default-character-set=utf8

在[mysqld]下添加

default-character-set=utf8

MySql 自定义排序

str: 字段名 ,

str1,str2,str3: 自定义排序的数值

自然排序: 1,2,3,4,5 , 自定义排序: 5,3,1,4,2

先排 5,3 的数据,1,2,4的数据按照时间来

把 5,3 分 一级, 1,2,4为一级, 每级按时间排序; 也可以加一个字段实现下面的效果;


标题名称:mysql排序规则怎么改 mysql修改表的排序规则
文章链接:http://scyanting.com/article/hejips.html