求SQL同一个表中的两个列复制的语句

来源:百度知道 编辑:UC知道 时间:2024/05/05 03:29:34
我要将id1--id5的数据复制到id中

说明:
如果值为NULL,就跳过,如下表中的第1和第2行;
如果同一行中有多个值(可以肯定这些值一定也是相同的),那么只要一个值,如表中的第3和第4行

可以分多次复制
比如第一次合并
id1到id
第二次合并
id2到id
............

原来的表:
列id的初始值=NULL

id id1 id2 id3 id4 id5
1 NULL 1 NULL NULL NULL NULL
2 NULL NULL 2 NULL NULL NULL
3 NULL NULL NULL 5 5 5
4 NULL NULL NULL 5 5 5
5 .... .... .... .... .... ....

合并后的表:
id id1 id2 id3 id4 id5
1 1 1 NULL NULL NULL NULL
2 2 NULL 2 NULL NULL NULL
3 5 NULL NULL 5 5 5
4 3 NULL NULL 3 3 3
5 .... .... .... .... .... ....
数据库为MS SQL 2000

to:
qtoy2ha
按你说的做了
但是没有数据更新到i

不知道你是用的什么数据库,又是要用什么语言,我给你写个ASP的吧
for i = 1 to 5
sql = "UPDATE [表名] SET [id] = [id" & i & "] WHERE [id] = NULL"
conn.execute(sql)
next

不明白再问
------------------>>
用我这个笨方法吧
复制下面SQL语句到MS SQL 的SQL查询分析器,把表名改为你的表名,运行就OK了

UPDATE [表名] SET [id] = [id1] WHERE [id] = NULL
UPDATE [表名] SET [id] = [id2] WHERE [id] = NULL
UPDATE [表名] SET [id] = [id3] WHERE [id] = NULL
UPDATE [表名] SET [id] = [id4] WHERE [id] = NULL
UPDATE [表名] SET [id] = [id5] WHERE [id] = NULL