最新的github.com/mongodb/mongo-go-driver使用问题

来源:5-6 Find查询记录

k8svip

2019-01-20

//查询
var a int64 = 0
var b int64 = 10
ops := &options.FindOptions{Skip: &a, Limit: &b}
if cur, err = collection.Find(context.TODO(), cond, ops); err != nil {
	fmt.Println(err)
	return
}

这个地方是否使用的不对,无法查询出来10条数据,文档是多于10条的;

写回答

2回答

牙小木

2020-04-06

// 将 int64 转化为 *int64
int64Num := int64(2)
limitNum := (*int64)(unsafe.Pointer(&int64Num))
findCursor, err = collection.Find(context.TODO(), findCondition,
   &options.FindOptions{
      AllowPartialResults: nil,
      BatchSize:           nil,
      Collation:           nil,
      Comment:             nil,
      CursorType:          nil,
      Hint:                nil,
      Limit:               limitNum,
      Max:                 nil,
      MaxAwaitTime:        nil,
      MaxTime:             nil,
      Min:                 nil,
      NoCursorTimeout:     nil,
      OplogReplay:         nil,
      Projection:          nil,
      ReturnKey:           nil,
      ShowRecordID:        nil,
      Skip:                nil,
      Snapshot:            nil,
      Sort:                nil,
   })

你的方法更好

0
0

k8svip

提问者

2019-01-22

if cur, err = collection.Find(context.TODO(), cond, options.Find().SetSkip(0), options.Find().SetLimit(6)); err != nil {
  fmt.Println(err)
  return
}


老师你好,我这样了之后,也无法取出6条;

0
2
小鱼儿老师
回复
k8svip
辛苦!
2019-01-25
共2条回复

Go语言开发分布式任务调度 轻松搞定高性能Crontab

分布式系统设计+高并发细节处理,一次性让你“晋级”到位

1136 学习 · 177 问题

查看课程