java.sql.SQLSyntaxErrorException: ORA-01795: 列表中的最大表达式数为 1000

这个原因在于Oracle语法限制,in内数量不能超过1000,故采取满1000分割用OR连接

例如
select * from table where col in(‘col1’,‘col2’ …)
如果in后面的item过多的话,超过1000,就会出现这种错误
解决方法是:
select * from table where col in(‘col1’,‘col2’ …,‘col1000’) or col in(‘col1001’, …)

你可能感兴趣的:(java,sql,oracle)