如您所见,我有这些表格 Salary_grades 和 Teachers_salary ,teacher_id是我将在不同数据库中获得的教师表的外键。
我试过了这个查询
SELECT *
FROM teachers_salary
LEFT JOIN salary_grades
ON grade = (SELECT salary_grade FROM teachers_salary WHERE teacher_id = 3)
WHERE teacher_id = 3;
我得到了我想要的结果。
所以我的问题是我想显示存储在teacher_salary中的所有信息,其中的等级等于salary_grade表中的等级,所以我尝试了没有where子句的查询。
SELECT *
FROM teachers_salary
LEFT JOIN salary_grades ON grade = (SELECT salary_grade FROM teachers_salary);
我收到此错误:
子查询返回多行。
那么我如何用salary_grades值显示所有记录等于salary_grades.grade值?
答案 0 :(得分:1)
您不需要对此
进行子查询SELECT *
FROM teachers_salary s
LEFT JOIN salary_grades g
ON s.salary_grade = g.grade