首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在mongodb中使用日期查询从Grails gmongo检索时出错

在mongodb中使用日期查询从Grails gmongo检索时出错
EN

Stack Overflow用户
提问于 2013-07-14 17:27:49
回答 1查看 639关注 0票数 0

我有一个字符串:

代码语言:javascript
复制
'"startDate" : {"\\$gte" : new Date() }'

实际上,我想查询我的mongodb数据库集合,以获取当前date.Here是示例文档之后日期的所有集合:

代码语言:javascript
复制
{
  "_id" : ObjectId("51e2a857adc0c2fb535f6904"),
  "dateInfo" : {
    "dates" : {
      "startDate" : ISODate("2013-07-13T04:00:00Z"),
      "endDate" : ISODate("2013-07-19T20:00:00Z")
    },
    "named" : "name1",
    "fieldX" : "field1",
    "contact" : {
      "numbs" : ["+44 121 127 127", "+44 568 789 256", "+44 687 5788 9875"]
    }
  },
  "Locality" : "locality1",
  "type" : "ewhet"
}

在mongo shell中,我可以按如下方式查询:

代码语言:javascript
复制
db.collectionName.find({"dateInfo.dates.startDate" : {"$gte" : new Date()}})

现在我想从groovy开始。我尝试这样做(使用mongoDB java api):

代码语言:javascript
复制
DBCursor cursor = db.collectionName.find(new JsonSlurper().parseText('{"startDate" : {"\$gte" : new Date() }}'))

上面的代码给出了如下错误:

代码语言:javascript
复制
Lexing failed on line: 1, column: 48, while reading 'new ', was trying to match the constant 'null'

现在JsonSlurper的问题是它在键和值names.But中都需要双引号,如果我在new Date()中放了一个双引号,mongodb将不会对其求值。

那么这里能做些什么呢?

EN

回答 1

Stack Overflow用户

发布于 2013-07-14 19:43:15

您是否尝试过:

代码语言:javascript
复制
db.collectionName.find( [ 'dateInfo.dates.startDate' : ['$gte' : new Date() ] ] )
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17638143

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档