我正在尝试使用@Query方法将两个实体连接到第三个实体中。
@Query("SELECT new com.concretepage.entity.DeptEmpDto(d.departmentId,d.departmentName,d.managerId,d.locationId,e.employeeId,e.firstName,e.lastName,e.phoneNumber,e.hireDate,e.jobId,e.salary,e.commissionPct) FROM Employee e INNER JOIN Department d")
List <DeptEmpDto> fetchEmpDeptDataInnerJoin();
您的SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册,以找到在第1行的''附近使用的正确语法。
我不明白我的错误在哪里,任何帮助将不胜感激:)。
答案 0 :(得分:0)
使用ON
子句联接表后,错过了联接条件。因此,只需使用以下命令更改查询:
@Query("SELECT new com.concretepage.entity.DeptEmpDto(d.departmentId,d.departmentName,d.managerId,d.locationId,e.employeeId,e.firstName,e.lastName,e.phoneNumber,e.hireDate,e.jobId,e.salary,e.commissionPct) FROM Employee e INNER JOIN Department d on e.joining_column_from_table1=d.joining_column_from_table2")
请确保替换
joining_column_from_table1
并joining_column_from_table2
,其中包含表格中的列名 分别Employee
和Department