关于MYSQL一条多表查询语句的问题。

发布于 2022-08-26 19:43:16 字数 931 浏览 17 评论 0

表group 字段 group_id level
表people 字段 people_id group_id
表relation 字段 relation_id people_id relate_people_id group_id

现在想查询 relation表的 relation_levelrelation.people_id 的人的people_level高的关系出来,应该怎么写语句比较合适?我写的SQL语句如下,希望大家能提点一二。

SELECT
    a.people_id,
    a.relation_level,
    b.people_level
FROM
    (
        SELECT
            people_id,
            level AS relation_level
        FROM
            `relation`
        JOIN `group` ON `relation`.group_id = `group`.group_id
    ) AS a,
    (
        SELECT
            people_id,
            level AS people_level
        FROM
            `people`
        JOIN `group` ON `people`.group_id = `group`.group_id
    ) AS b
WHERE
    a.people_id = b.people_id
AND a.relation_level > b.people_level

感谢您能耐心看完我的问题。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文