如何将某个SQL列移动到表中的其他位置?

时间:2017-02-07 10:28:40

标签: sql sql-server

假设我的表看起来像这样:

B, C, D, A

如何将“A”移动到第一个位置?

4 个答案:

答案 0 :(得分:8)

我认为SQL表中的列不一定有任何内部顺序。相反,列或列的派生在结果集中出现的顺序取决于您在SELECT时设置的顺序。

如果要更改SQL Server Management Studio中列的顺序,请按照documentation

答案 1 :(得分:1)

根据我的评论,这是装饰性的。也许某人无缘无故地需要这样做。

所以,为了争论,我会为你写一个东西......

select *
into #supertemp
from Mytable

drop table MyTable

create table MyTable (A INT,           -- replace with your datatypes in the correct column order
                      B varchar(30),
                      C datetime,
                      D INT)

insert into MyTable
select A,B,C,D
from #SuperTemp

答案 2 :(得分:0)

您可以使用MODIFY命令修改列而不会丢失数据。

请查看:

How to change the column position of MySql table without losing column data?

你可以这样做:

ALTER TABLE table_name MODIFY password varchar(20) AFTER id

答案 3 :(得分:0)

我认为这可能对你有所帮助。

Change Column Order in a Table in SQL Server