表复制数据的sql语句问题,求高手!!!!

huawei_MCU 2013-10-31 11:44:15
一个表 里面有
UsrID UsrNBR CustomerID AcctID EIGNO 等字段
主键是联合主键 UsrID ,UsrNBR ,EIGNO 3个字段构成的联合主键


现在表里面有一些数据,需求是:
在本表里面新增一些数据,根据CustomerID 字段来新增

具体是:要查询出所有CustomerID 不重复的记录(原数据CustomerID很多相同的)
把这些记录的UsrID字段的值变成该记录的CustomerID的值,然后插入到本表里面!

求高手解答!!!
...全文
165 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
_jerrytiger 2013-10-31
  • 打赏
  • 举报
回复
Shawn 2013-10-31
  • 打赏
  • 举报
回复
--楼主没给数据,仅供参考吧:
INSERT  INTO tablename
( 
	UsrID,
    UsrNBR,
    CustomerID,
    AcctID,
    EIGNO
)
SELECT
    B.UsrID,
    B.UsrNBR,
    B.CustomerID,
    B.AcctID,
    B.EIGNO
FROM (SELECT DISTINCT CustomerID FROM tablename) a
CROSS APPLY
(
	SELECT TOP(1) UsrID=CustomerID,UsrNBR,CustomerID,AcctID,EIGNO 
	FROM tablename m 
	WHERE m.CustomerID = a.CustomerID
		AND NOT EXISTS
		(
			SELECT 1
			FROM tablename n
			WHERE n.UsrID = m.CustomerID
				AND n.UsrNBR = m.UsrNBR
				AND n.EIGNO = m.EIGNO
		)  
) b
快溜 2013-10-31
  • 打赏
  • 举报
回复
insert into 表 select CustomerID,UsrNBR ,CustomerID,AcctID,EIGNO from 表 a where not exists(select * from 表 where UsrID=a.UsrID and UsrNBR=a.UsrNBR and EIGNO=a.EIGNO)
huawei_MCU 2013-10-31
  • 打赏
  • 举报
回复
实在不行 写存储过程算了。。。
huawei_MCU 2013-10-31
  • 打赏
  • 举报
回复
要的结果是 把每个customID 的数据都新增一条 使usrid变成该条的customID
huawei_MCU 2013-10-31
  • 打赏
  • 举报
回复
引用 1 楼 chwnrthd 的回复:
发下 表结构 一些测试数据 要的结果·
  • 打赏
  • 举报
回复
发下 表结构 一些测试数据 要的结果·
huawei_MCU 2013-10-31
  • 打赏
  • 举报
回复
存储过程搞定了
huawei_MCU 2013-10-31
  • 打赏
  • 举报
回复
还是不行啊

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧