laravel 违反完整性约束:1052 列和 where 子句不明确
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/47234227/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Integrity constraint violation: 1052 Column and in where clause is ambiguous
提问by nethkennnnn
I have two table the Tbl_payroll_leave_employeev2and tbl_payroll_leave_schedulev2and i want to jointhem but im getting an error like this
我有两个表Tbl_payroll_leave_employeev2和tbl_payroll_leave_schedulev2,我想join他们,但即时得到这样的错误
SQLSTATE[23000]: Integrity constraint violation: 1052 Column 'payroll_leave_employee_id' in where clause is ambiguous (SQL: select
payroll_employee_idfromtbl_payroll_leave_employee_v2inner jointbl_payroll_leave_schedulev2ontbl_payroll_leave_employee_v2.payroll_leave_employee_id=tbl_payroll_leave_schedulev2.payroll_leave_employee_idwherepayroll_leave_employee_id= 5) ?
SQLSTATE [23000]:完整性约束违规:1052列在where子句是不明确的'payroll_leave_employee_id'(SQL:选择
payroll_employee_id从tbl_payroll_leave_employee_v2内连接tbl_payroll_leave_schedulev2上tbl_payroll_leave_employee_v2。payroll_leave_employee_id=tbl_payroll_leave_schedulev2。payroll_leave_employee_id其中payroll_leave_employee_id= 5)?
$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();
回答by dieuhd
In where condition, you must define the field payroll_leave_employee_idof table tbl_payroll_leave_employee_v2or table tbl_payroll_leave_schedulev2
在 where 条件下,必须定义payroll_leave_employee_idtabletbl_payroll_leave_employee_v2或 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();


