mysql - 合并从两个单独的连接获得的结果
问题描述
我有三张桌子
users
:
我想从(用户和博客)和(用户和Instagram)的内部连接中获得结果,目前我正在执行这些查询
1。)
SELECT instagram.post_author,instagram.post_link,instagram.post_image,instagram.ts,users.username
from instagram
INNER JOIN users ON instagram.access_key=users.access_key ORDER BY instagram.ts DESC
2.)
SELECT blog.content,users.username,blog.ts
from blog
INNER JOIN users ON blog.access_key=users.access_key ORDER BY blog.ts DESC
我想结合这两个查询的结果,但我不知道如何。
ps:由于所选列的数量和兼容性不同,UNION
无法操作。
解决方案
我想你确实想要union all
:
select uib.*
from ((select u.username, i.ts, i.post_author, i.post_link, i.post_image,
null as b.content
from users u join
instagram i
on i.access_key = u.access_key
) union all
(select u.username, b.ts, null as post_author, null as post_link, null as post_image,
b.content
from users u join left join
blog b
on b.access_key = u.access_key
)
) uib
order by ts desc;
推荐阅读
- discord - 获取机器人正在服务的成员和服务器的数量
- python - 使用python将.jpg传输到android手机
- amazon-web-services - 运行 PySpark 时 AWS EMR 上的代码失败
- javascript - 如何在 React 中屏蔽输入 IP 地址
- angular - 错误 TS2339:“PostsComponent”类型上不存在属性“addForm”
- r - R中的“extRemes”包错误:无法绘制返回期
- python - 如何使用 json_normalize() 进行迭代?
- python - Firebase 多项目上传不起作用
- ssis - 将 mysql 500 万行迁移到 Microsoft SQL Server
- ios - 在 swiftUI 中从领域中删除对象会出现错误“对象已被删除或无效。”