gpt4 book ai didi

mysql union,不同的查询优化

转载 作者:行者123 更新时间:2023-11-30 22:06:21 26 4
gpt4 key购买 nike

所以我有一个简单的查询如下:

Select DISTINCT A.col1 as col1 
FROM Table A join Table B on(A.col2 = B.col2)
JOIN table C on(C.col1 = A.col3)
UNION
SELECT DISTINCT A.col1 as col1
FROM Table A
JOIN Table B on (A.col2 = B. col2) where A.col4 != 'somevalue';

因为它是可见的,表 A 和表 B 每次都在相同的列上执行连接。我无法找到一种方法来利用这些详细信息并加快查询速度

最佳答案

尝试像这样将连接转换为 EXISTS 和子查询逻辑:

SELECT DISTINCT A.col1 AS col1
FROM TABLE A
WHERE EXISTS
(SELECT 1 FROM TABLE B WHERE A.col2 = B.col2
)
AND EXISTS
(SELECT 1 FROM TABLE C WHERE A.col1 = C.col3
)
UNION
SELECT DISTINCT A.col1 AS col1
FROM TABLE A
WHERE EXISTS
(SELECT 1 FROM TABLE B WHERE A.col2 = B.col2
)
AND A.col4 != 'somevalue');

关于mysql union,不同的查询优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41598364/

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