【问题标题】:Pair Columns then ORDER BY对列然后按顺序排列
【发布时间】:2021-10-08 13:52:14
【问题描述】:

这一定是一个 PEBCAK 问题,因为它看起来很基本。是否有查询要说“如果 'mon' = 1 THEN ORDER BY 'time' THEN if 'tue' = 1 ORDER BY 'time', THEN if 'wed' = 1 ORDER BY 'time'”?

+=====+=====+=====+========+
| mon | tue | wed |  time  |
+=====+=====+=====+========+
|  0  |  1  |  1  |  0100  |
|  0  |  0  |  0  |  2200  |
|  1  |  1  |  1  |  1500  |
|  1  |  1  |  0  |  0600  |
|  0  |  0  |  0  |  1400  |
|  1  |  0  |  1  |  1100  |
+=====+=====+=====+========+

想要的结果:

mon 0600
mon 1100
mon 1500
tue 0100
tue 0600
tue 1500
wed 0100
wed 1100
wed 1500

【问题讨论】:

    标签: mysql sql-order-by


    【解决方案1】:
    ...
    ORDER BY CASE WHEN mon=1 THEN 1 WHEN tue=1 THEN 2 WHEN wed=1 THEN 3 END,
        time
    

    【讨论】:

    • 你是巫师吗?谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多