在 SQL 查询中 IN() 中传递的值的数量有什么限制?我一直在网上四处寻找,但没有找到我想要的答案?
问问题
73 次
1 回答
2
当明确说明限制为 1,000 时,即:
select * from the_table where id in (1, 2, ..., 1000)
这是在IN 条件的文档中:
您最多可以在 expression_list 中指定 1000 个表达式。
如果没有明确说明,则没有限制:
select * from table1 where id in ( select id from table2 )
虽然有用,但通常有更好的方法将这么多或更多的值传递给 SELECT。可能值得考虑一些描述或 JOIN 的参考表。
也可以看看:
于 2013-10-10T19:29:30.963 回答