MySQL获取两个值,获得一个新值并按其排序


MySQL taking two values, getting a new value and sorting by it

我在MySQL表中有两列(x和y)。我想做的是从y中减去x使其成为z,然后按z对结果集进行排序。

样本数据:

| ID |      NAME | X |  Y |
---------------------------
|  1 |  DemoUser | 0 |  5 |
|  2 | DemoUser2 | 2 | 10 |
所需输出:

| ID |      NAME | X |  Y |  Z |
--------------------------------
|  2 | DemoUser2 | 2 | 10 | -8 |
|  1 |  DemoUser | 0 |  5 | -5 |

根据您提供的样本数据

SELECT t.*, t.x - t.y z
  FROM table1 t
ORDER BY z
样本输出:

| ID |      NAME | X |  Y |  Z |
--------------------------------
|  2 | DemoUser2 | 2 | 10 | -8 |
|  1 |  DemoUser | 0 |  5 | -5 |

这里是SQLFiddle demo