MYSQL - 按价格排序+具体的第一个结果

时间:2016-01-05 16:01:11

标签: mysql sql-order-by

我使用mysql,表pricesid, seller, price列。

我希望按价格DESC显示结果,但我希望第一个结果始终是卖家BOB,无论他是否更贵。

我正在尝试:

SELECT *
FROM prices 
ORDER BY -price = BOB;

但它不起作用:/

4 个答案:

答案 0 :(得分:1)

SELECT *
FROM prices
ORDER BY (`seller` = 'BOB') DESC, `seller`

这将使BOB成为第一,你应该在sql部分访问w3Schools以获得一些帮助我发现它非常有用:)

答案 1 :(得分:1)

SELECT *
FROM prices
ORDER BY (`seller` = 'BOB') DESC, `seller`, 'price'

答案 2 :(得分:0)

发现IT

order by case when name = 'BOB' then 1 else 2 end, -price DESC

答案 3 :(得分:0)

尝试使用此查询:

SELECT * FROM prices
ORDER BY (`seller` = 'BOB') DESC, price DESC, seller 

您可以重新尝试此查询:

SELECT * FROM prices
ORDER BY (`seller` = 'BOB') DESC,(seller='James') ASC, price DESC, seller