问题
I have two table the Tbl_payroll_leave_employeev2
and tbl_payroll_leave_schedulev2
and i want to join
them but im getting an error like this
SQLSTATE[23000]: Integrity constraint violation: 1052 Column 'payroll_leave_employee_id' in where clause is ambiguous (SQL: select
payroll_employee_id
fromtbl_payroll_leave_employee_v2
inner jointbl_payroll_leave_schedulev2
ontbl_payroll_leave_employee_v2
.payroll_leave_employee_id
=tbl_payroll_leave_schedulev2
.payroll_leave_employee_id
wherepayroll_leave_employee_id
= 5) ◀
My table structure
$employee_id = Tbl_payroll_leave_employeev2::select('payroll_employee_id')
->join('tbl_payroll_leave_schedulev2','tbl_payroll_leave_employee_v2.payroll_leave_employee_id','=','tbl_payroll_leave_schedulev2.payroll_leave_employee_id')
->where('payroll_leave_employee_id',$emp)
->get();
回答1:
In where condition, you must define the field payroll_leave_employee_id
of table tbl_payroll_leave_employee_v2
or table tbl_payroll_leave_schedulev2
$employee_id = Tbl_payroll_leave_employeev2::select('payroll_employee_id')
->join('tbl_payroll_leave_schedulev2','tbl_payroll_leave_employee_v2.payroll_leave_employee_id','=','tbl_payroll_leave_schedulev2.payroll_leave_employee_id')
->where('tbl_payroll_leave_schedulev2.payroll_leave_employee_id',$emp)
->get();
来源:https://stackoverflow.com/questions/47234227/integrity-constraint-violation-1052-column-and-in-where-clause-is-ambiguous