有的时候需要对一个表查询2次,"需要查找的外键在同一个表中
这种情况,leetcode 上有一个类似的SQL题。
gorm 如何使用join呢。
此题SQL的答案之一为(我的答案:
SELECT emp.name (AS "Employee"这个可删除)
FROM
Employee as emp
INNER JOIN Employee AS man
on man.id = Employee.ManagerId
WHERE
emp.Salary > man.Salary;
转换为go gorm的代码应该是(即为后面的表增加一个别名:
db.Model(&model.Employee{}).Select.("employee.name")Joins("inner join employee as man on employee.ManagerId = man.id").Where("employee.salary > man.Salary");
个人经验。应该还有其他的办法。
1073

被折叠的 条评论
为什么被折叠?



