2个数据表 如何一一比对完全?

RICHEER COCA 2023-03-13 21:11:27

DECLARE @SNO INT = 1;
WHILE @SNO<11
BEGIN


INSERT INTO Result007

select NoText 
FROM  AAA a
where exists 
	(
select 1 FROM BBB b WHERE a.NoText = b.NoText 
AND B.KID BETWEEN (1+40642560*(@SNO-1)) AND 40642560*@SNO
			)
AND A.ID BETWEEN (1+54396352*(@SNO-1)) AND 54396352*@SNO;

set @SNO=@SNO+1
end;

 

...全文
94 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
二月十六 版主 2023-03-15
  • 打赏
  • 举报
回复
shoppo0505 2023-03-14
  • 打赏
  • 举报
回复

用merge对比

Hello World, 2023-03-14
  • 打赏
  • 举报
回复

双循环,由现在的循环10次变成循环100次,10段*10段

RICHEER COCA 2023-03-14
  • 举报
回复
@Hello World, DECLARE @SNO INT = 1; WHILE @SNO&lt;11 DECLARE @GroupID INT = 1; WHILE @GroupID&lt;11 BEGIN INSERT INTO Result007 select NoText FROM AAA a where exists ( select 1 FROM BBB b WHERE a.NoText = b.NoText AND B.KID BETWEEN (1+40642560*(@SNO-1)) AND 40642560*@SNO ) AND A.ID BETWEEN (1+54396352*(@GroupID-1)) AND 54396352*@GroupID; SET @GroupID=@GroupID+1 END;
RICHEER COCA 2023-03-13
  • 打赏
  • 举报
回复

执行以上的脚本,只是完成了 KID 和 ID 分成10段的数据对比,但无法完成当 ID=1时 和 所有的KID=1,2,3,4,5,6,7,8,9,10一一对比,请问: 问题出在哪里,如何修改脚本,学习中.请大神指点迷津

文盲老顾 2023-03-13
  • 打赏
  • 举报
回复

你这是想干啥?比较两个结构相同的表中,有多少数据不一样?按行计数?

RICHEER COCA 2023-03-13
  • 举报
回复
@文盲老顾 比较 有相同的数据
RICHEER COCA 2023-03-13
  • 举报
回复
@文盲老顾 表AAA有5.43亿行数据,表BBB有4.06亿行数据,如果不分段对比,SQL server无法运行,但拆开分段,这个脚码又出现结果缺失,不完整,比对相同的数据不完整.

34,603

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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