当前位置: 首页 > 面试题库 >

WHERE col IN(')条件的限制

诸经略
2023-03-14
问题内容

我正在使用以下代码

SELECT * FROM table
WHERE Col IN (123,123,222,....)

但是,如果在IN子句中放置了超过3000个数字,则SQL会引发错误。

有谁知道是否有尺寸限制或类似限制?!


问题答案:

根据所使用的数据库引擎的不同,指令的长度可能会有限制。

SQL Server有一个很大的限制:

http://msdn.microsoft.com/en-
us/library/ms143432.aspx

ORACLE在另一端有一个非常容易达到的限制。

因此,对于大的IN子句,最好创建一个临时表,插入值并执行JOIN。它也可以更快地工作。



 类似资料:
  • 问题内容: 嗨,我必须在具有大量ID的MySQL语句中使用IN条件。 例 IN语句可以包含的项是否有限制? 问题答案: 没有,请查看有关IN功能的手册: 列表中的值数仅受max_allowed_pa​​cket值限制。

  • 我的Hibernate bean ContentElementTypeProperty引用了另一个Hibernate bean TestUnitType(多对一)。 TestUnitType是ContentElementTypeProperty的字段。 在数据库中,testunittypeid是表ContentElementTypeProperty中的一列。 我正在寻求从contentelemen

  • 输入是按分数排序的,如下所示: 现在我需要在以下限制下从数组中选择10个得分最高的元素: 它们应该具有不同的 它们应该有不同的 同一。并且来自同一的任何子序列的长度不应大于2。 如果已经有一个选定的元素具有此,那么新元素将被丢弃。 如果已经有一个选定的元素具有这个,那么新元素将被丢弃。 如果已经有三个选定元素具有此,那么新元素将被丢弃。 如果在选定的尾部已经有两个元素具有此,那么新元素将被丢弃。

  • 问题内容: 在Google上搜索后,我发现Elasticsearch的最大查询条件限制为1024? 它是可配置的吗?如果可以,请提供任何步骤。 谢谢,Sameer 问题答案: 默认值为1024,但是它是可配置的。在elasticsearch配置文件(例如yml文件)中,设置提及的设置:例如。

  • 问题内容: 您好,我在示例中使用了hibernate模式。对于bean Table Audit Trial,我想获取包含上限和下限的日期范围之间的审计试用。我的代码如下 我的开始日期是。且结束日期为。但是它只会将结果赋予。不执行包含性搜索。我正在使用SQL Server。 问题答案: 我认为您的auditDate实际上是一个时间戳。如果是这样的话,那是正常的,因为25/05/2011表示25/05

  • 问题内容: 如何使用hibernate限制来实现此目的? 问题答案: 认为有效