微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 JOIN 创建一个视图,因为其他表只有几个匹配项,所以不起作用

如何解决使用 JOIN 创建一个视图,因为其他表只有几个匹配项,所以不起作用

我有一个名为 users 的核心表,其中包含一个用户列表。 其中一些用户在名为 tracker 的表中有一条记录。

我想查看 users 表,并从 last_call 向其中添加一个名为 tracker 的列,因此如果用户不存在于其中,它将是 NULL tracker,如果是,它会显示值。

所以第一步是创建一个JOIN。我在这里读到我应该使用 LEFT OUTER JOIN,但它没有解决我的问题。以下查询仅返回用户存在于 tracker 表中的记录。如果用户记录不存在,则结果中缺少该用户

SELECT u.*,fq.last_call FROM tracker fq LEFT OUTER JOIN users u ON u.id = fq.user_id

解决方法

您只需将表格倒置即可。如果您想要 users 中的所有行,那么它应该是 LEFT JOIN 中的第一个表:

SELECT u.*,fq.last_call
FROM users u LEFT JOIN
     tracker fq 
     ON u.id = fq.user_id;

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。