创建用于排序使用的表内容。
表结构如下:
数据表中内容情况:
创建该数据库表SQL
CREATE TABLE `book` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`bookname` varchar(50) DEFAULT NULL,
`price` decimal(50,0) DEFAULT NULL,
`author` varchar(50) DEFAULT NULL,
`typeid` int(25) DEFAULT NULL,
`picturePath` varchar(50) DEFAULT NULL,
`content` varchar(255) DEFAULT NULL,
`standby1` varchar(255) DEFAULT NULL,
`standby2` varchar(255) DEFAULT NULL,
`inventory` int(25) DEFAULT NULL,
`saleCount` int(25) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8;
INSERT INTO `book` VALUES ('8', '巴黎圣母院', '450', '维克多雨果', '1', 'test.png', ' 这就是一个测试\r\n ', '2019-05-24', '1-1', '500', '201');
INSERT INTO `book` VALUES ('9', '测试', '12', '测试内容1', '1', 'rec.jpg', '这里是显示测试', '2019-05-20', '1-2', '520', '23');
INSERT INTO `book` VALUES ('10', '测试1', '13', '测试内容1', '3', 'rec.jpg', '看看决胜巅峰来表示', '2019-05-20', '1-2', '45', '12');
INSERT INTO `book` VALUES ('11', '测试2', '45', '测试内容2', '4', 'rec.jpg', '阿斯顿发世纪东方', '2019-05-20', '1-3', '78', '23');
INSERT INTO `book` VALUES ('12', '测试3', '78', '测试内容3', '5', 'rec.jpg', '发大家好轧空淡饭黄齑', '2019-05-21', '1-4', '457', '23');
INSERT INTO `book` VALUES ('14', 'mysql数据库', '99', '张三', '14', 'rec.jpg', 'mysql数据库作为一个关系型数据库', '2019-05-21', '1-c-2019', '300', '120');
INSERT INTO `book` VALUES ('16', 'C语言从入门到精通', '788', '测试', '1', 'rec.jpg', ' 456465465\r\n \r\n \r\n \r\n ', '2019-05-24', '1-1', '500', '100');
MySQL排序查询
基本语法结构:
select
查询列表
from
表名称
[where 筛选条件]
Order by 排序列表 [asc|desc]
注:
1.asc标示的是升序。desc表示的是降序,默认是升序。
2.order by子句中可以支持单个字段、多个字段、表达式、函数、别名。
3.order by子句一般是放在查询语句的最后面,limit子句除外。
1.查询图书信息,按照图书价格从高到低进行排序【基本查询排序】
2.查询图书价格大于50的信息,并按照库存量从低到高排序【添加筛选条件】
3.按照图书的总价值显示图书的名称【按照表达式进行排序】
4.按照图书的总价值进行对图书信息对图书的库存和价格进行排序【按照别名进行排序】
5.按照图书名称的长度进行图书名称和作者的排序查询【按照函数排序】
6.查询图书信息,先按照图书的价格排序,然后在按照图书库存量进行排序【按照多个字段进行】