in 语法
{ 'fieldOne' : { $in : [ 1, 2, 3, 4] } }
MySQL
我们已知MySQL
对于in
参数是没有限制的,但是对整个sql语句是有大小限制的
MongoDB
那么MongoDB
又是什么情况呢?
上网查了一下,记录下来,分享给大家
详见大神分析,原文链接
中文翻译、总结一下:
-
查询语句本身其实是一个document, 最大为16MB(3.4,4.0 的限制,官方文档)
-
查询语句本身,也就是
{ '' : { '$in' : [] }}
, 大小为 22字节 -
每增加一个字段名,增加一位字节
-
in
里面每增加一个参数,大小固定增加11
字节
(想知道以上数据是怎么来的,可以点那个原文链接,进去看看,大神分析的很6)
综上所述
mongos> ((16*1024*1024) - 22 -1) / 11
1525199.3636363635
也就是参数,最多写152万
个,很大了,随便写吧
参考
https://stackoverflow.com/a/18495467
https://docs.mongodb.com/manual/core/document/#document-size-limit
网友评论