Sql server SQL Server查询,将每个人的养老基金的价值增加一个月的供款

Sql server SQL Server查询,将每个人的养老基金的价值增加一个月的供款,sql-server,Sql Server,我有一个SQL查询问题,我正在努力解决,我对它还很陌生 基本上,我有一个养老基金,每个月员工将每月缴纳工资的5% 在我学习的过程中,我发现很难弄清楚什么是最好的查询类型,我所说的is INSERT etc,以及你们希望我提供什么样的信息来帮助你们?还使用SQLServerManagementStudio 谢谢 INSERT INTO CompanyEmployees (FirstName, LastName, Age, Salary, PositionID, PensionID) VALUES

我有一个SQL查询问题,我正在努力解决,我对它还很陌生

基本上,我有一个养老基金,每个月员工将每月缴纳工资的5%

在我学习的过程中,我发现很难弄清楚什么是最好的查询类型,我所说的is INSERT etc,以及你们希望我提供什么样的信息来帮助你们?还使用SQLServerManagementStudio

谢谢

INSERT INTO CompanyEmployees (FirstName, LastName, Age, Salary, PositionID, PensionID) 
VALUES ('John', 'Doe', 33, 30.000, 
           (SELECT TOP 1 ID 
            FROM JobPosition 
            WHERE Title = 'IT Support'),
           (SELECT ID 
            FROM PensionFunds 
            WHERE Amount = 250.00));

INSERT INTO PensionFunds (Amount, PensionProvider) 
VALUES ('250.00', 3)
所以基本上,每个月我都需要约翰·多伊把他30000美元的5%捐给他的养老金基金


希望这就是你们想要的。如果SQL不符合要求,我深表歉意。

我希望这样:

INSERT INTO PensionFunds (EmployeeId, Amount, PensionProvider) 
    SELECT EmployeeId, Salary * 0.05, PensionId
    FROM CompanyEmployees;
这并没有考虑到无数的事情,例如:

并非CompanyEmployees中的所有行都可能是活动员工。 并不是公司里所有的员工都在为养老基金供款。 如果有人有两个兼职职位,公司员工中可能会出现重复的情况。 您似乎没有日期,因此您允许同时进行多个供款。 也许不是所有员工都贡献5%。
什么是SQL引擎Postgres、MySQL或其他?你能提供一个数据样本吗?你们有哪些领域?您想做什么有点不清楚。您使用的是哪种dbms?最佳查询类型的含义是什么?请回答您的问题,并根据这些数据添加一些和预期的输出。请你的问题-不要在评论中发布代码或其他信息。关于我的问题的广泛性,我不确定你们需要什么。此时此刻。这是最基本的。一份工作。都很活跃。所有这些同时发生。全部5%。感谢您抽出时间回复!