首页 > 解决方案 > 查询以从 3 个不同表中获取不同键的数据

问题描述

我有三个不同的表,想从中获取数据。如果有人对此有一些解决方案,请帮助我。

用户表

userName | email(p.k) | accountType(p.k)

 Vivek    | v@asd.asd | google

Rahul    | r@asd.asd | facebook

事件表

eventId(p.k) | email(f.k) | accountType(f.k) | eventName

1    | v@asd.asd | google | birthday

贡献者

eventId(f.k) | email(f.k) | accountType(f.k) | contribute

1    | r@asd.asd | facebook | $20

我想要这样的数据

Rahul contribute $20 for vivek birthday

如何在单个查询中获取 rahul 和 vivek 任何人都可以帮助我

标签: mysqlsqloraclesqlite

解决方案


这个查询应该很简单,我们只需要加入用户表两次。

SELECT * 
FROM user
JOIN contribute ON user.email = contribute.email
JOIN event ON event.id = contribute._eventId
JOIN user u2 ON event.email = u2.email;

推荐阅读