Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.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
Python mongo db删除字符串日期删除操作_Python_Mongodb_Python 2.7_Python 3.x - Fatal编程技术网

Python mongo db删除字符串日期删除操作

Python mongo db删除字符串日期删除操作,python,mongodb,python-2.7,python-3.x,Python,Mongodb,Python 2.7,Python 3.x,我是python编程新手,在文档中插入一些字段时犯了一个错误,比如日期不是iso日期格式,我按原样插入,然后再次更改日期格式并插入mongodb,但有多条记录的日期相同,一条类似iso,另一条类似字符串日期格式我想删除所有字符串格式的对象我所做的是: db.attention.deletemany({date:{$lte:newdate(2016,12,22)}) 我有类似于日期:ISODate(“2016-12-22T00:00:00.000+0000”)的记录, 我只需要删除字符串date任

我是python编程新手,在文档中插入一些字段时犯了一个错误,比如日期不是iso日期格式,我按原样插入,然后再次更改日期格式并插入mongodb,但有多条记录的日期相同,一条类似iso,另一条类似字符串日期格式我想删除所有字符串格式的对象我所做的是:

db.attention.deletemany({date:{$lte:newdate(2016,12,22)})

我有类似于日期:ISODate(“2016-12-22T00:00:00.000+0000”)的记录,
我只需要删除字符串date任何一个,请帮助我

您可以做的最简单的事情是迭代所有值,如果它符合您的条件,则删除它

from pymongo import MongoClient
client = MongoClient()
db = client.<your_db_name>
for document in db.attendance.find():
    if type(document['date']) == str:
        db.attendance.delete_one(document)
从pymongo导入MongoClient
client=MongoClient()
db=客户端。
对于db.Attention.find()中的文档:
如果类型(文档['date'])==str:
db.考勤.删除一个(文件)

您可以做的最简单的事情是迭代所有值,并在满足条件的情况下将其删除

from pymongo import MongoClient
client = MongoClient()
db = client.<your_db_name>
for document in db.attendance.find():
    if type(document['date']) == str:
        db.attendance.delete_one(document)
从pymongo导入MongoClient
client=MongoClient()
db=客户端。
对于db.Attention.find()中的文档:
如果类型(文档['date'])==str:
db.考勤.删除一个(文件)
您可以按如下方式使用:

db.attendance.remove("date":{$type:"string"})
这将删除所有存储为
字符串的
日期
文档。这里的
string
是mongo中
string数据类型的别名。在需要对其他数据类型执行操作的情况下,您可以看到您可以按如下方式使用的

db.attendance.remove("date":{$type:"string"})

这将删除所有存储为
字符串的
日期
文档。这里的
string
是mongo中
string数据类型的别名。在这种情况下,您需要对其他数据类型执行操作,您可以看到

,问题是什么?只是删除特定日期的记录?问题是什么?只是删除带有特定日期的记录?很好,你能告诉我query我想在mongoshef上执行此操作吗?我没有使用mongoshef,但是,你可以使用@oblivion的方法在一条语句中执行此操作。很好,你能告诉我query我想在mongoshef上执行此操作吗,您可以使用@oblivion的方法在一条语句中实现这一点。