首先使用他们的 id 加入所有 3 个表,而您将使用他们的朋友 id 获得每个名字。现在,您已将朋友 ID 与包裹 ID 一起加入,同时您将获得朋友的薪水。最后过滤 FRIEND_SALARY>SALARY 。我在这里使用 oracle 语法。希望在 mysql 中也能正常工作。
select TMP2.NAME name
from (SELECT TMP1.NAME,
PP.ID,
TMP1.SALARY salary,
TMP1.FRIEND_ID,
PP.SALARY friend_salary
FROM packages pp,
(SELECT *
FROM students s, friends f, packages p
WHERE S.ID = F.ID
AND S.ID = P.ID) tmp1
WHERE PP.ID = TMP1.FRIEND_ID) tmp2
where TMP2.FRIEND_SALARY>TMP2.SALARY
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句