2012-01-05 171 views
3

我正在使用SQL Server 2000.我需要从一列(VALIMIT)获取结果并将它们插入同一表(lending_limits)中的另一列(VALIMIT2012)。SQL SELECT或INSERT INTO查询

我的问题是,我需要首先执行一个SELECT查询,还是只从INSERT INTO查询开始,以及INSERT INTO查询的正确语法是什么。

+3

你的意思是MS Access? – 2012-01-05 15:29:46

+0

没有'MS SQL 2003' - 你的意思是** MS Access 2003 **,还是你的意思是** SQL Server **版本(有效值:7,2000,2005,2008,2008 R2) – 2012-01-05 16:06:36

回答

3

您可以用UPDATE语句做到这一点:

update lending_limits 
set VALIMIT2012 = VALIMIT 
+0

澄清,这不会删除VALIMIT的结果?在UPDATE/SET查询之后,VALIMIT和VALIMIT2012两列都将返回相同的结果吗? – 2012-01-05 15:38:44

+0

@ user1132474:正确 – RedFilter 2012-01-05 15:40:22

1

都不是。你不插入列,将行插入,所以你想要的是一个update

update SomeTable 
set VALIMIT2012 = VALIMIT 

注:看起来你每年有一列,这是坏的数据库设计。如果每年有不同的数据,则应将其放在单独的表中,以便将年份作为数据,而不是列名的一部分。

0
UPDATE TableName SET VALIMIT2012 = VALIMIT