Golang mgo大于和小于时间戳

时间:2016-09-17 17:53:46

标签: mongodb go mgo

我正在尝试查询两个其他时间戳之间的时间戳。我有这个简单的功能:

func (e *EventService) GetEmployeeEventsBetween(employeeID string, start, end int64) ([]Event, error) {
    var retrivedEvents []Event
    if err := e.c().Find(bson.M{
        "employee": employeeID,
        "start":    bson.M{"$gte": start, "$lte": end},
    }).All(&retrivedEvents); err != nil {
        return nil, err
    }

    return retrivedEvents, nil
}

现在根据该函数,查询应该只返回"events"开始日期时间戳大于传入的start时间戳并且小于传递的end时间戳。

但是,假设db有3个事件,每个事件都有这些开始日期:

1474290000 1474389000 1474463700

现在我可以说我传递了start的{​​{1}}参数和1474462800 end参数我希望该函数只能返回1 1474491600将是具有"event"时间戳的那个,但它会返回所有这些。几乎无论我传入的是1474463700start参数,它都会返回db中的所有项目

更新

如果我记录end这就是我的回复

.Explain()

0 个答案:

没有答案