Sql server SQL查询没完没了

Sql server SQL查询没完没了,sql-server,Sql Server,有两个表: 萨蒂斯代伊酒店 萨蒂希德·萨蒂塞拉·乌鲁尼·萨蒂奇·克德维科德·克德维尤兹德·米克塔尔仓库 AZ01 20001 1 3788898 999 AZ 18.00 1 AZ01 20002 1 3788898 999 AZ 18.00 1 AZ01 20003 1 3876390 999 AZ 18.00 1 AZ01 20003 2 3793202 999 AZ 18.00 1 AZ01 20003 3 4046508 999 AZ 18.00 1 AZ01 20003 4 38433

有两个表:
萨蒂斯代伊酒店 萨蒂希德·萨蒂塞拉·乌鲁尼·萨蒂奇·克德维科德·克德维尤兹德·米克塔尔仓库 AZ01 20001 1 3788898 999 AZ 18.00 1 AZ01 20002 1 3788898 999 AZ 18.00 1 AZ01 20003 1 3876390 999 AZ 18.00 1 AZ01 20003 2 3793202 999 AZ 18.00 1 AZ01 20003 3 4046508 999 AZ 18.00 1 AZ01 20003 4 3843387 999 AZ 18.00 1 AZ01 20003 5 3850608 999 AZ 18.00 1 和DepoSevkDetay

BaslikID Sira UrunID Miktar Fiyat Depo 20001 1 3792703 1 1 AZ01 20002 1 4067131 1 1 AZ01 20003 1 3251881 1 1 AZ01 20003 2 3251883 1 1 AZ01 20003 3 3788887 1 1 AZ01 20003 4 3788890 1 1 AZ01 20004 1 3761260 2 1 AZ01 巴斯利基德锡拉乌鲁尼米克塔尔菲亚特仓库 20001 1 3792703 1 AZ01 20002 1 4067131 1 1 AZ01 20003 1 3251881 1 1 AZ01 20003 2 3251883 1 1 AZ01 20003 3 378887 1 1 AZ01 20003 4 3788890 1 1 AZ01 20004 1 3761260 2 1 AZ01 有一项任务是将每个UrunID的Miktar之和分摊到第二个表中的UrunID。但UrunID记录的数量可能不匹配。但这不是唯一的问题。我尝试了一个简单的查询,如下所示,但它会无休止地执行

UPDATE Table_A SET Table_A.[Miktar] = Table_B.[Miktar] FROM [Retail].[dbo].[tb_DepoSevkDetay] AS Table_A INNER JOIN ( SELECT [Miktar], [UrunID] FROM [Retail].[dbo].[tb_SatisDetay] GROUP BY [UrunID], [Miktar] ) AS Table_B ON Table_A.[UrunID] = Table_B.[UrunID] 更新 表A 设置 表A.[Miktar]=表B.[Miktar] 从…起 [零售].[dbo].[tb_DepoSevkDetay]如表A所示 内连接( 从[Retail].[dbo].[tb_SatisDetay]中选择[Miktar],[UrunID] 按[UrunID]、[Miktar]分组,如表B所示 表A上的[UrunID]=表B上的[UrunID]
请帮助找出为什么这些表有多大?查询看起来不错。我根据样本表进行了测试。如果为示例数据提供DDL/插入,则会有所帮助。有一件事-Table_B不是按UrunID对Miktar进行分组-将子查询更改为:选择SUM([Miktar])作为Miktar,从[Retail].[dbo].[tb_SatisDetay]按[UrunID]分组嗨,我已经按照您所说的做了,但是查询仍然需要无限时间执行(执行1小时,取消,检查了表,但没有做任何更改)有一个链接约束阻止在SevkDetay表中进行任何更改,我修改了它,甚至删除了它,但查询仍在继续。但是,可以成功运行一个简单的查询来对表进行一些更改。这些表包含大约1000000行数据,每行有6列。 UPDATE Table_A SET Table_A.[Miktar] = Table_B.[Miktar] FROM [Retail].[dbo].[tb_DepoSevkDetay] AS Table_A INNER JOIN ( SELECT [Miktar], [UrunID] FROM [Retail].[dbo].[tb_SatisDetay] GROUP BY [UrunID], [Miktar] ) AS Table_B ON Table_A.[UrunID] = Table_B.[UrunID]