Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在pymongo中指定分片键字段的顺序?(适用于mongodb)_Mongodb_Pymongo - Fatal编程技术网

如何在pymongo中指定分片键字段的顺序?(适用于mongodb)

如何在pymongo中指定分片键字段的顺序?(适用于mongodb),mongodb,pymongo,Mongodb,Pymongo,如何在pymongo中指定分片键字段的顺序?(适用于mongodb) 基本上,pymongo允许您执行以下操作: connection.admin.command('shardcollection', 'dbname.collname', key = {c:1,b:1,a:1}) 但这不尊重我钥匙的顺序 如果在mongo shell中执行此操作,则会遵循键的顺序 有人知道如何在pymongo中指定顺序吗 非常感谢您的帮助。我想出来了 from collections import Ordere

如何在pymongo中指定分片键字段的顺序?(适用于mongodb)

基本上,pymongo允许您执行以下操作:

connection.admin.command('shardcollection', 'dbname.collname', key = {c:1,b:1,a:1})
但这不尊重我钥匙的顺序

如果在mongo shell中执行此操作,则会遵循键的顺序

有人知道如何在pymongo中指定顺序吗

非常感谢您的帮助。

我想出来了

from collections import OrderedDict

key = OrderedDict([('a',1), ('b', 1), ('c',1)])
...
...
connection.admin.command('shardcollection', 'mydb.test', key=key)
我知道了

from collections import OrderedDict

key = OrderedDict([('a',1), ('b', 1), ('c',1)])
...
...
connection.admin.command('shardcollection', 'mydb.test', key=key)

哎呀!我没看到是你发布了答案。顺便说一下,这对我不起作用。上面写着“缺失值”。有什么想法吗?试试像[('c',1),('b',1),('a',1)]这样的元组列表哦!我没看到是你发布了答案。顺便说一下,这对我不起作用。上面写着“缺失值”。有什么想法吗?试试像[('c',1),('b',1),('a',1]这样的元组列表