Beg*_*Pal 1 sql t-sql sql-server sql-server-2005
下面的查询根据当前活动的招聘信息记录和工资记录获取wageTypeID.
SELECT wt.wageTypeID
FROM TimeSheet t
INNER JOIN Employee e ON e.employeeID = t.employeeID
INNER JOIN Salary s ON s.salaryID = t.salaryID
INNER JOIN Wage w ON w.wageID = s.wageID
INNER JOIN EmpHiringInfo ehf ON ehf.EmpHiringInfoID = s.EmpHiringInfoID
INNER JOIN WageType wt ON wt.wageTypeID = w.wageTypeID
WHERE ehf.employeeID = 300
AND ehf.isActive = 1
AND s.isActive = 1
Run Code Online (Sandbox Code Playgroud)
上面的查询应该返回值15!我想知道我哪里出错了?
这是连接表的模式:
TimeSheet:
timeSheetID
employeeID - 300
salaryID
.
.
Salary:
salaryID
EmpHiringInfoID
wageID
isActive - true
.
.
WageType:
wageTypeID - 15
wageTypeTitle - Hourly
Wage:
wageID
wageTypeID - 15
wageAmount - $11
EmpHiringInfo:
EmpHiringInfoID
employeeID
isActive - true
.
.
Run Code Online (Sandbox Code Playgroud)
工资中的isActive仅对一条记录为True.同样适用于EmpHiringInfo.
| 归档时间: |
|
| 查看次数: |
2210 次 |
| 最近记录: |