Mysql
 sql >> Database >  >> RDS >> Mysql

mysql ha lasciato il join esterno

Stai filtrando tc_date_transaction che filtra tutti i valori nulli in questo campo, anche quelli generati dall'outer-join e quindi vanifica il suo scopo. Sposta il filtro "tc_date_transaction ="17/06/2010"" nella clausola di unione e funzionerà.

SELECT * 
  FROM employee LEFT OUTER JOIN timecard 
       ON employee.employee_id = timecard.employee_id and tc_date_transaction = "17/06/2010";

oppure scrivi

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);