mysql如何按照中文排序解决方案

(编辑:jimmy 日期: 2024/12/27 浏览:2)

Sql代码
复制代码 代码如下:
/*
Navicat MySQL Data Transfer

Source Server : local
Source Server Version : 50022
Source Host : localhost:3306
Source Database : test

Target Server Type : MYSQL
Target Server Version : 50022
File Encoding : 65001

Date: 2012-11-19 15:46:13
*/

复制代码 代码如下:
SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for `person`
-- ----------------------------
DROP TABLE IF EXISTS `person`;
CREATE TABLE `person` (
`id` int(10) unsigned NOT NULL auto_increment,
`name` varchar(20) default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of person
-- ----------------------------
INSERT INTO `person` VALUES ('1', '张三');
INSERT INTO `person` VALUES ('2', '李四');
INSERT INTO `person` VALUES ('3', '王五');
INSERT INTO `person` VALUES ('4', '马六');
INSERT INTO `person` VALUES ('5', '钱七');

正序:
复制代码 代码如下:
select * from person ORDER BY CONVERT(name USING gbk);

结果:
2 李四
4 马六
5 钱七
3 王五
1 张三

倒序:
复制代码 代码如下:
select * from person ORDER BY CONVERT(name USING gbk) desc

结果:
1 张三
3 王五
5 钱七
4 马六
2 李四