表結構中的所有項目工作的僱員名單:SQL查詢來獲取誰從位置
Employee
(EMP_ID,EMP_NAME,emp_age)ProjectDetails
(PROJID,p_name,p_location)EmpLoyeeProject
(emp_no,project_num,hrs)
對於員工來說,這種關係是多對多的關係。
您能否幫忙編寫一個SQL查詢來獲取eid
和ename
爲那些位於「OneLocation」中的所有項目的員工?
表結構中的所有項目工作的僱員名單:SQL查詢來獲取誰從位置
Employee
(EMP_ID,EMP_NAME,emp_age)ProjectDetails
(PROJID,p_name,p_location)EmpLoyeeProject
(emp_no,project_num,hrs)對於員工來說,這種關係是多對多的關係。
您能否幫忙編寫一個SQL查詢來獲取eid
和ename
爲那些位於「OneLocation」中的所有項目的員工?
SELECT e.emp_id, e.emp_name
FROM Emplyee e
INNER JOIN EmpLoyeeProject ep
ON e.emp_id = ep.emp_no
AND ep.project_num IN (
SELECT DISTINCT ep.project_num
FROM EmpLoyeeProject epr
INNER JOIN ProjectDetails ep
ON epr.project_num = p.projid
WHERE p_location = 'OneLocation'
)
此查詢應提供所有在某個位置工作的emp。但不會返回在屬於特定位置的所有項目中工作的員工 –
我想你可以獲取所有通過內參與項目的員工列表如下加入:
SELECT e.emp_id, e.emp_name
FROM Emplyee e
INNER JOIN EmpLoyeeProject ep ON ep.emp_no = e.emp_id
INNER JOIN ProjectDetails pd ON pd.projid = ep.project_num
AND pd.p_location = 'youLocation'
如果我正確地理解您的架構,SQL查詢可能看起來像:
select distinct emp_id, emp_name from Emplyee e
inner join EmpLoyeeProject ep on ep.emp_no=e.emp_id
inner join ProjectDetails p on p.projid=ep.project_num
where p_location=?
你可以試試這個解決方案,它也允許你選擇多個位置。
這是您的查詢所需的最低限度,
SELECT
e.emp_id
, e.emp_name
FROM
employee e
JOIN employeeproject ep on e.emp_id = ep.emp_no -- assuming that ep.emp_no and e.emp_id are the same value (most likely the case)
join projectdetails pd on ep.projid = pd.project_number -- assuming that these are the same value.
WHERE
p_location in ('Melbourne') -- set your location , you can also go ('melbourne','sydney','adelaide')
但是我將擴大它一點點地提供多一點的數據,使之成爲誰永遠是要求的信息多一點有意義。
SELECT
e.emp_id
, e.emp_name
, pd.p_location
, p_name
FROM
employee e
JOIN employeeproject ep on e.emp_id = ep.emp_no -- assuming that ep.emp_no and e.emp_id are the same value (most likely the case)
join projectdetails pd on ep.projid = pd.project_number -- assuming that these are the same value.
WHERE
p_location in ('Melbourne') -- set your location , you can also go ('melbourne','sydney','adelaide')
如果你使用像SSRS報告服務,那麼你可以做一些很酷的東西像傳遞參數,你的報告基於關閉位置
你可以使事情就像一個下拉框,類似於下面,使它更加的人性化(這一個是因此用戶可以將數據限制在特定月份/月,他們都希望看看。
位於什麼? –
伊娜像地名裏的位置SFO。我的意思是一個位置 –