gpt4 book ai didi

SQL : transform union query to a single query

转载 作者:行者123 更新时间:2023-11-29 14:06:34 25 4
gpt4 key购买 nike

我有这样的数据库模式

用户
编号
初中生

文档
编号
标题
user_id(用户的外键)
模式(可以接受 PUBLIC 或 PRIVATE)

我想检索所有公开的文档和属于给定用户(矩阵)的所有文档

我做了一个这样的联合查询:

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'

效果很好,但我可以用另一种方式(我在某处读到联合查询对性能不利)比如子查询来实现相同的结果吗?

非常感谢

最佳答案

select distinct *
from document d
Inner join user u ON u.id = d.user_id
where u.matricule = 'matricule1' or d.mode ='PUBLIC'

SELECT DISTINCT 就像 UNION 一样删除重复项。 (也许您只想SELECT?)

关于SQL : transform union query to a single query,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40783565/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com