我有一个数据库架构这样SQL:变换联合查询到单个查询
用户
ID
matricule
文件
ID
标题
USER_ID(国外用户密钥)
模式(可接受PUBLIC或PRI VATE)
我想找回这是公开的所有文件和属于特定用户的所有文件(matricule)
我做了一个联合查询是这样的:
select * document d
Inner join user u ON u.id = d.user_id
and u.matricule ='matricule1'
UNION
select * from document d
Inner join user u ON u.id = d.user_id
where d.mode ='PUBLIC'
效果很好,但我可以用另一种方式实现相同的结果(我在某处读取联合查询对性能不利),例如子查询?
非常感谢您
@a_horse_with_no_name。我使用的是PostgreSQL。 – ulquiorra