我想更新一个表来改变数据的顺序,所以它是由some_column DESC订购的。
我可以通过选择*并通过some_column DESC进行排序,然后将数据输入到新表中来实现这一点,但这很麻烦,所以我想知道是否还有其他解决方案?
所以我想要改变这个:
name|cost
John|50
Pete|75
Dojo|60
Neal|100
到
name|cost
Neal|100
Pete|75
Dojo|60
John|50
使用更新语句。这可能吗?
答案 0 :(得分:2)
您不能依赖数据在SQL表中的物理存储方式。您可以做的最好的事情是在该表上创建VIEW
,按照您希望的方式进行排序,并在随后的查询中使用它:
CREATE VIEW ordered_view AS
SELECT name, cost
FROM mytable
ORDER BY cost DESC;
SELECT name, cost FROM ordered_view;