我有我的MySQL数据库的三个表分别是:SUM内蒙古/左/右连接的SQL查询
员工:
ID int
Name
Surname
DayOffRequest:
ID int (PK)
EmployeeID FK references Employee
HowManyDays double
排名:
ID int (PK)
EmployeeID FK references Employee
daysEmployeeCanGet double
每个员工都有排名,他每年可以获得的休息天数是由他的排名决定的。例如,第一年他总共可以得到14天。他们的日子是由DaysOffRequest
举行。
我想在一个查询中获得用户ID,RankID,SUM(HowManyDays),SUM(daysEmplooyeeCanGet)。
我用
SELECT
e.id, r.id,
SUM(r.daysEmployeeCanGet),
SUM(HowManyDays)
FROM
Employee e
INNER JOIN
Rank r ON r.`userID` = e.`ID`
INNER JOIN
DayOffRequest
但没有奏效。我的意思是它的工作,但不是想要的。
我实际上想做一个查询,就像每当员工休息一天时一样,他会自动减少从他可以得到的总天数中获得的天数(他可以得到的总天数是daysEmployeeCanGet for everyrank他有。)
我该如何实现这一目标?
我希望我很清楚。
谢谢。
我删除了无关的数据库标记。随意为您真正需要的数据库添加标签。 –
我只看到您的查询的第一部分,并且您使用的表格(用户)未在您的表格列表中列出... – mauro
哦,我很抱歉,我只是将表格翻译成英文,员工和用户是同一件事情。 @mauro –