我似乎无法弄清楚如何进行连接语句。
select usrs.*
from
students s
join system_users usrs on
s.father=usrs.user_id
OR s.mother=usrs.user_id
OR s.guardian=usrs.user_id
where s.user_id = '201209083'
我有这个查询,它返回:
+------------+---------+--------+--------+
| user_id | contact | status | rights |
+------------+---------+--------+--------+
| f201209083 | 4093 | active | NULL |
| g201209083 | 4095 | active | NULL |
| m201209083 | 4094 | active | NULL |
+------------+---------+--------+--------+
现在我需要的是使用联系人列的信息检索更多信息并将其与此表连接:
select
*
from
address
where
contact_id = (contact column);
我需要帮助在一个查询中实现它。
附言谁能告诉我这种技术叫什么?我无法通过仅搜索 JOIN 找到有关此的信息。或者学习链接会更好。
最佳答案
您可以将当前语句作为子查询并加入:
SELECT * FROM address
JOIN (
SELECT
usrs.*
FROM
students s
JOIN system_users usrs ON s.father=usrs.user_id OR s.mother=usrs.user_id OR s.guardian=usrs.user_id
WHERE
s.user_id = '201209083'
) AS temp
ON contact_id = (contact column);
这应该会为您提供原始结果以及 address
表中的结果。
关于mysql - 在其他语句中使用 SQL 查询的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13590610/