我有这样的表格,应该描述罗马特的一对。
name| surname | city | distance|sex | roomate
-----------------------------------------------------
Mike| Tyson | London | 599 | M | Oliver Red
-----------------------------------------------------
Ron | Simpson | Newcastle | 4 | M | John Godson
-----------------------------------------------------
Tim | Black | Dover | 311 | M |
-----------------------------------------------------
John| Godson | Calais | 111 | M | Ron Simpson
-----------------------------------------------------
Oliver| Red | Dover | 99 | M | Mike Tyson
是否有可能像对一样订购它和上面的距离柱?如果没有,是否可以像对一样订购数据?这更重要;)
name | surname | city | distance|sex | roomate
-----------------------------------------------------
Mike | Tyson | London | 599 | M | Oliver Red
-----------------------------------------------------
Oliver| Red | Dover | 99 | M | Mike Tyson
-----------------------------------------------------
John | Godson | Calais | 111 | M | Ron Simpson
-----------------------------------------------------
Ron | Simpson | Newcastle | 4 | M | John Godson
-----------------------------------------------------
Tim | Black | Dover | 311 | M |
-----------------------------------------------------
答案 0 :(得分:0)
是。您可以按列名称订购结果。 (例如,距离,roomate)。
SELECT * FROM table ORDER BY distance, roommate;
答案 1 :(得分:0)
执行此操作的唯一方法是有条件地订购您的行...这意味着您需要知道行数... 我建议更改您的表格以包含房间号或其他内容这样你就可以订购......
这是一个显示条件排序的示例查询。
SELECT *
FROM table
ORDER BY
CASE
WHEN
roomate = 'Oliver Red'
OR CONCAT(name, ' ', surname) = 'Oliver Red'
THEN 1
WHEN
roomate = 'Ron Simpson'
OR CONCAT(name, ' ', surname) = 'Ron Simpson'
THEN 2
ELSE 5
END,
distance DESC;