【发布时间】:2012-04-22 05:05:33
【问题描述】:
我对 sql 完全陌生,我自己做不到。所以我需要你的帮助。 我想对列中的值进行排序,然后保存更改。但我不知道该怎么做。
表格是这样的:
Id | Name | SomeDescription
---------------------------
1 |Best | Description1
2 |Worth | Description2
3 |Good | Description3
我想得到类似的东西:
Id | Name | SomeDescription
---------------------------
1 |Best | Description1
2 |Good | Description3
3 |Worth | Description2
所以我需要对“id”和“name”列进行排序。
我使用以下语句对“名称”列的值进行排序:
SELECT * FROM games ORDER BY name ASC
但是如何对 id 列的值进行排序并将更改保存在表中? 请帮忙。
【问题讨论】:
-
一般排序时不会更改数据,数据表从不保证按特定顺序返回数据。
-
为什么要保存已排序的数据库表?
-
@MarioDeSchaepmeester 历史悠久。简而言之,我的应用程序需要它。
-
我认为没有一种方法可以有效地对数据库表进行排序,而无需将已排序的表保存为副本或使用非常复杂或一系列更新语句。最好的办法是编写一个存储过程 或保存对表进行排序的查询。这样你只需要执行它来获取排序表。你不会那样弄乱你的数据库。我仍然可以看到它已排序的 reading 值,但将其保存已排序是没有意义的。所以我的意思是你应该“保存排序后的阅读”。
标签: sql