0

我知道 SQL IN 子句中有 1000 个项目的限制。目前,我在IN选择查询的“”子句中使用逗号分隔的项目字符串,我想更改它。

所以,我发现了 this,它声明使用其中一个JOIN或在其内部传递一个查询IN

应该首选哪一个?

编辑(另一个问题):

IN在“”子句中传递查询和在“ ”子句中传递逗号分隔的参数有什么区别IN

4

2 回答 2

1

数据库优化器将以相同的方式执行这两个变体。您可以使用看起来更好的那个。:)

于 2012-07-25T11:44:53.137 回答
0

当您在“In 子句”中放置查询时,数据库需要首先计算此查询,然后根据结果计算“主查询”。如果您将值放在“In 子句”中,则数据库需要计算附加查询。

作为在 in 子句中加入查询的关注点,数据库会将它们优化为相同。

于 2012-07-24T07:49:00.023 回答