我是sql的新手,不能自己做.所以我需要你的帮助.我想在列中对值进行排序,然后保存更改.但我不知道该怎么做.
表看起来像这样:
Id | Name | SomeDescription
---------------------------
1 |Best | Description1
2 |Worth | Description2
3 |Good | Description3
Run Code Online (Sandbox Code Playgroud)
我希望得到类似的东西:
Id | Name | SomeDescription
---------------------------
1 |Best | Description1
2 |Good | Description3
3 |Worth | Description2
Run Code Online (Sandbox Code Playgroud)
所以我需要对"id"和"name"列进行排序.
我使用以下语句对"名称"列的值进行排序:
SELECT * FROM games ORDER BY name ASC
Run Code Online (Sandbox Code Playgroud)
但是,如何对id列的值进行排序并保存表中的更改?请帮忙.
Umb*_*lla 22
你必须使用第二个表
创建一个games2与表格结构相同的新表格games,确保ID自动递增
CREATE TABLE `games2` LIKE `games`;
Run Code Online (Sandbox Code Playgroud)复制数据,排序,进入 games2
INSERT INTO `games2` (`Name`, `SomeDescription`) SELECT `Name`, `SomeDescription` FROM `games` ORDER BY `Name`
Run Code Online (Sandbox Code Playgroud)放下或移动旧桌子
-- DROP TABLE `games`;
-- or
RENAME TABLE `games` TO `games1`;
Run Code Online (Sandbox Code Playgroud)将新表重命名为旧名称
RENAME TABLE `games2` TO `games`;
Run Code Online (Sandbox Code Playgroud)这些步骤将产生您想要的.