Je filtert tc_date_transaction die alle null-waarden in dit veld filtert, zelfs die gegenereerd door de outer-join en daarom zijn doel verslaat. Verplaats het filter "tc_date_transaction ="17/06/2010"" naar de join-clausule en het zal werken.
SELECT *
FROM employee LEFT OUTER JOIN timecard
ON employee.employee_id = timecard.employee_id and tc_date_transaction = "17/06/2010";
of schrijf
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);