Filtrujesz tc_date_transaction, który filtruje wszystkie wartości null w tym polu, nawet te generowane przez zewnętrzne połączenie, a zatem nie spełnia swojego celu. Przenieś filtr "tc_date_transaction ="17/06/2010"" do klauzuli join i zadziała.
SELECT *
FROM employee LEFT OUTER JOIN timecard
ON employee.employee_id = timecard.employee_id and tc_date_transaction = "17/06/2010";
lub napisz
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);