解决办法有两个:
1.使用INNER JOIN
替换IN
例:
SELECT foo
FROM bar
WHERE bar.stuff IN
(SELECT stuff FROM asdf)
转换为
SELECT b.foo
FROM (
SELECT DISTINCT stuff
FROM asdf ) a
JOIN bar b
ON b.stuff = a.stuff
2.多个or连接
select * from table_name
where
column_name in (V1,V2,V3,...V1000)
or
column_name in (V1001,V1002,V1003,...V2000)
...
参考:
- java.sql.SQLSyntaxErrorException: ORA-01795: maximum number of expressions in a list is 1000;
- SQL IN Clause 1000 item limit
最新评论
我的是ipv4网络,如何使用直播源啊!
我今天试了,不想啊,我的是新疆昌吉移动的网络。
收不到验证码电报
现在充值29起了