首页
学习
活动
专区
圈层
工具
发布

大IN子句
EN

Stack Overflow用户
提问于 2015-03-23 21:25:21
回答 2查看 127关注 0票数 0

我有一个Java服务,它创建一个准备好的语句,执行,然后使用resultSet。然而,我有一个潜在的场景,传递给select的id列表可能在1和10000+之间。我已经研究了如何对预准备语句进行批处理。但是,我真正想做的是将完整的集合或id发送到sql,并让它分解查询并返回完整的结果集。

代码语言:javascript
复制
select col1 from tab1 where id IN (?,?,?...);

感谢您的指点!

EN

回答 2

Stack Overflow用户

发布于 2015-03-23 21:26:49

Comma separated values转换为Rows,然后将distinct行插入到temp table中,并使用主表join临时表。

CSV转换为Rows 的步骤

票数 1
EN

Stack Overflow用户

发布于 2015-03-23 21:27:49

最好有一个表,即使是临时的表,其中包含您在与Tab1连接的in中的ID。这避免了由于IN中的太多东西而导致的任何可能的错误,甚至在性能方面也可能更好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29211423

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档