Sie filtern tc_date_transaction, das alle Nullwerte in diesem Feld filtert, auch die durch den Outer-Join generierten, und daher seinen Zweck verfehlt. Verschieben Sie den Filter "tc_date_transaction ="17/06/2010"" in die Join-Klausel und es wird funktionieren.
SELECT *
FROM employee LEFT OUTER JOIN timecard
ON employee.employee_id = timecard.employee_id and tc_date_transaction = "17/06/2010";
oder schreiben Sie
SELECT *
FROM employee LEFT OUTER JOIN timecard
ON employee.employee_id = timecard.employee_id
where (tc_date_transaction = "17/06/2010" or tc_date_transaction is null);