0
我需要根据表中的行数和名为'users'的表中的用户数,将一个表中的相同数量的记录插入另一个表中。例如,如果一个表'refunds_upload'有100条记录,而'用户'表有10个用户,那么我想将所有100行插入到表'refunds'中,并为每个用户ID分配10条记录。从一个表中插入动态数量的记录到另一个表中
目前,我只是在做这个
INSERT Refunds
(BorrowerNumber, UserID)
SELECT BorrowerNumber, 'unknown' FROM Refunds_Upload
这是什么需要一个大致轮廓发生
--get the list of users from the Users table
SELECT UserID FROM Users
--determine how many refunds each user gets
Declare @RefundsPerUser int
SET @RefundsPerUser = ROUND((SELECT COUNT(*) FROM Users)/(SELECT COUNT(*) FROM Refunds_Upload),2)
--For each UserID in Step 1...
INSERT INTO Refunds @RefundsPerUser INTO Refunds
这没有任何意义 - 你为什么计算用户和除以Refunds_Upload中的记录计数?这可以回答,但我担心这不是你真正想要做的/没有足够的措辞来得到你正在寻找的答案.... –
是的,对不起,你是对的。它应该是:SET @RefundsPerUser = ROUND((SELECT COUNT(*)FROM Refunds_Upload)/(SELECT COUNT(*)FROM Users),2) – user3641053