MySQL:按2个字段排序

时间:2010-02-12 20:29:53

标签: mysql

假设我有一个产品清单,每个产品都有价格。我希望展示最贵的产品,如果2个产品或更多的领带,那么我希望按他们的名字订购。这样做似乎没有产生我想要的结果:

ORDER BY cost DESC, product_name

我正在寻找的语法是什么?

2 个答案:

答案 0 :(得分:6)

这很好用:

use test;

create table products (cost decimal(15,2), product_name varchar(50));

insert into products values (14.50, 'b product');
insert into products values (14.50, 'a product');
insert into products values (15.50, 'c product');

select * from products order by cost desc, product_name

返回:

15.50, 'c product'
14.50, 'a product'
14.50, 'b product'

答案 1 :(得分:4)

问题出在哪里?

ORDER BY cost DESC, product_name 

将按cost desc排序,然后按product_name asc排序。您遇到了什么类型的意外行为?