次のクエリがあります。
$sql = "SELECT * FROM employee AS emp LEFT JOIN tr_bls_date AS bls ON emp.employee_id=bls.employee_id AND employee_id='".$id."'";
基本的に、empとblsテーブルの両方に共通のemployee_idフィールドがあります。従業員 ID ( ) で特定の従業員を探してい$idます。ここで何が間違っていますか?
次のクエリがあります。
$sql = "SELECT * FROM employee AS emp LEFT JOIN tr_bls_date AS bls ON emp.employee_id=bls.employee_id AND employee_id='".$id."'";
基本的に、empとblsテーブルの両方に共通のemployee_idフィールドがあります。従業員 ID ( ) で特定の従業員を探してい$idます。ここで何が間違っていますか?
含まれているテーブルが 2 つemployee_idあり、サーバーがどこを検索するか混乱しているためです。この問題を解決するには、ソース テーブルを追加します。
ON emp.employee_id = bls.employee_id AND
emp.employee_id = ? // this will search on table employee
を実行しているleft joinため、次のエイリアスを使用する必要がありますemp。
. . .
emp.employee_id=bls.employee_id AND emp.employee_id=. . .
left join値を持つことが常に保証されているため、a の最初のテーブルのエイリアスを使用する必要があります。