【发布时间】:2016-11-18 17:26:11
【问题描述】:
我使用的是 laravel 5.3,我有一些左连接查询,在 laravel 查询方法中有错误。 这是我的正常查询
SELECT bran.branchName,sch.schoolName From m_schoolbranch bran
LEFT JOIN m_students stu ON stu.schoolNo=bran.schoolNo AND stu.branchNo=bran.branchNo
LEFT JOIN m_school sch ON sch.schoolNo=stu.schoolNo where stu.userNo='0000000001';
这是我的新 laravel 查询
DB::table('m_schoolbranch')
->join('m_students', 'm_schoolbranch.schoolNo', '=', 'm_students.schoolNo')
->join('m_students', 'm_schoolbranch.branchNo', '=', 'm_students.branchNo')
->join('m_school', 'm_schoolbranch.schoolNo', '=', 'm_school.schoolNo')
->select('m_school.schoolName', 'm_schoolbranch.branchName')
->where('m_students.userNo',$userNo)
->get();
在这些查询中,我需要匹配表 m_students 中的两列,所以我这样写
->join('m_students', 'm_schoolbranch.branchNo', '=', 'm_students.branchNo')
但我显示错误...
【问题讨论】:
-
错误说明了什么?
-
Connection.php 第 729 行中的 QueryException:SQLSTATE[42000]:语法错误或访问冲突:1066 不是唯一的表/别名:'m_students'(SQL:选择
m_school.schoolName,@ 987654326@.branchName来自m_schoolbranch内连接m_students上m_schoolbranch.schoolNo=m_students.schoolNo内连接@9876543@34@ 上@987654336.=@987654336.=@9876 987654338@ 内部连接 m_schoolm_schoolbranch.schoolNo=m_school.schoolNo其中m_students.userNo= 0000000001)
标签: laravel-5