gpt4 book ai didi

php - 优化和缩短联合查询

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

下面是我获取一些对象的大量属性的查询。有没有优化和缩短它的方法?

SELECT object_id, value, name FROM attr_text WHERE object_id IN ('43', '42', '41', '40', '39') 
UNION
SELECT object_id, value, name FROM attr_varchar WHERE object_id IN ('43', '42', '41', '40', '39')
UNION
SELECT object_id, value, name FROM attr_int WHERE object_id IN ('43', '42', '41', '40', '39')
UNION
SELECT object_id, value, name FROM attr_decimal WHERE object_id IN ('43', '42', '41', '40', '39')
UNION
SELECT object_id, value, name FROM attr_datetime WHERE object_id IN ('43', '42', '41', '40', '39')

结果:

43   red    color1
43 blue color2
43 small size
42 black color1
42 big size

最佳答案

您可以做出的最明显的改进是使用合理的架构。

假设这不是一个选项,我建议的一件事是将 UNION 更改为 UNION ALL,因为您可能没有多个具有相同名称和值的属性. UNION [DISTINCT] 只是执行不必要的比较。在任何情况下,您都不会在当前查询中处理具有相同名称和不同值的属性。

关于php - 优化和缩短联合查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4360927/

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