读书人

插入列值的有关问题

发布时间: 2012-03-18 13:55:39 作者: rapoo

插入列值的问题
表TAB有X、Y两个字段,字段X已有记录,字段Y为空。现在想把一列记录插入Y字段中,可是插入的时候却不是从第一行开始的,这怎么办呀,请大虾们帮忙,先谢谢!!

[解决办法]

SQL code
declare @表TAB table (X int,Y int)insert into @表TABselect 5,null union allselect 6,null union allselect 8,null union allselect 9,null union allselect 23,null union allselect 15,null/*有一列数27951232*/SELECT  X,c AS Y FROM    (SELECT ROW_NUMBER() OVER ( ORDER BY GETDATE() ) AS id,* FROM  @表TAB) aLEFT JOIN (SELECT ROW_NUMBER() OVER ( ORDER BY GETDATE() ) AS id,* FROM (SELECT 2 AS c UNION ALL SELECT 7 UNION ALL SELECT    9UNION ALL SELECT 5 UNION ALL SELECT 12 UNION ALL SELECT 32) d) b ON a.id = b.id /*X           Y----------- -----------5           26           78           99           523          1215          32*/
[解决办法]
给表加个自增的标识列,新增数据的表也加一个标识列,然后两表按照这个标识列去更新。


update a
set a.y = b.y
from tb1 a join tb2 b on a.id = b.id
[解决办法]
探讨
表TAB有X、Y两个字段,字段X已有记录,字段Y为空。现在想把一列记录插入Y字段中,可是插入的时候却不是从第一行开始的,这怎么办呀,请大虾们帮忙,先谢谢!!

读书人网 >SQL Server

热点推荐