gpt4 book ai didi

oracle - ORA-01795 - 为什么表达式的最大数量限制为 1000

转载 作者:行者123 更新时间:2023-12-04 23:53:15 25 4
gpt4 key购买 nike

SO 充满了变通方法,但我想知道 IN 子句中“最大表达式数”限制为 1000 背后的历史原因?

最佳答案

这可能是因为,有可能被大量的值(value)观滥用。并且其中的每一个值都会被转化为等价的OR条件。

例如 NAME IN ('JOHN', 'CHARLES'..) 将被转换为 NAME = 'JOHN' OR NAME = 'CHARLES'

因此,它可能会影响性能..

但注意Oracle仍然支持

SELECT ID FROM EMP WHERE NAME IN(SELECT NAME FROM ATTENDEES)

在这种情况下,优化器不会转换为多个 OR 条件,而是创建一个 JOIN..

关于oracle - ORA-01795 - 为什么表达式的最大数量限制为 1000,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26309099/

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