我有一張表包含我公司員工的名字和姓氏,以及一個決定他們是否仍在公司工作的字段。查找沒有匹配結果的所有行SQL
我有另一張表包含員工的任務列表 - 它還包含兩個字段與僱員的姓名( - 是的,我知道這不是一個好的結構)。
我希望能夠找到所有仍在公司工作的員工,但沒有使用MySQL查詢的任務。
任何想法?
我有一張表包含我公司員工的名字和姓氏,以及一個決定他們是否仍在公司工作的字段。查找沒有匹配結果的所有行SQL
我有另一張表包含員工的任務列表 - 它還包含兩個字段與僱員的姓名( - 是的,我知道這不是一個好的結構)。
我希望能夠找到所有仍在公司工作的員工,但沒有使用MySQL查詢的任務。
任何想法?
SELECT *
FROM employees
WHERE still_working_for_company
AND NOT EXISTS (
SELECT TRUE
FROM tasks
WHERE tasks.firstname = employees.firstname
AND tasks.lastname = employees.lastname
)
令人驚歎!這很好用!非常感謝你! – Avenger
您可以嘗試this--
select * from FirstTable where firstTable.employee='yes' and
firstTable.empid IN (select secondTbl.empId where firstTable.empid = secondTbl.empId)
查詢沒有進行測試,並假設你的第二個表(任務表)包含員工數據,只有當任務分配。
試試這個:
SELECT e.*
FROM emp e
LEFT JOIN emptask et ON e.firstname = et.firstname AND e.lastname = et.lastname
WHERE e.stillworks = 'y' AND et.taskid IS NULL
GROUP BY e.firstname, e.lastname
這兩個表中的任何鍵相關或不 –
顯然姓氏和名字是他們的關鍵。 – AndreKR
他們是相關的 - 與名字和姓氏領域。 值得一提的是我在員工表中大約有43,000行,在任務表中大約有55,000行 – Avenger