代码之家  ›  专栏  ›  技术社区  ›  zen

mysql Specific select with order[重复]

  •  0
  • zen  · 技术社区  · 7 年前

    我有桌子 products 带列 price . 它有带值的行:

    2
    0
    4
    5
    0
    3
    1
    

    什么参数 select 我应该使用以下方法获得结果:

    1
    2
    3
    4
    5
    0
    0
    
    3 回复  |  直到 7 年前
        1
  •  4
  •   Yogesh Sharma    7 年前

    您可以先订购0&然后休息

    SELECT * FROM <table> ORDER BY CASE WHEN price = 0 THEN 1 ELSE 0 END,price 
    
        2
  •  3
  •   juergen d    7 年前
    select * from products
    order by price = 0, price
    
        3
  •  0
  •   Sergey Menshov    7 年前

    SELECT *
    FROM test
    ORDER BY IF(price=0,999999999,price)
    

    SQL Fiddle- http://sqlfiddle.com/#!9/98f02/2