golang 分页获取mongodb数据

本文介绍如何利用Golang与MongoDB配合,实现高效的数据分页查询。通过示例代码展示如何设置查询条件、跳过指定数量的记录以及限制每次查询返回的数据量,从而实现翻页功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

分页查询:

/* 分页获取用户 */
func (c *UserC) GetALLUserByPage(g *gin.Context) {
	rsp := new(Rsp)
	var info PostParamTx
	err := g.BindJSON(&info)
	if err != nil {
		rsp.Msg = "json faild"
		rsp.Code = 201
		g.JSON(http.StatusOK, rsp)
		return
	}

	page := info.Page
	pageSize := info.Pagesize

    if page == 0 {
		page = 1
	}
	if pageSize == 0 {
		pageSize = 10
	}


	data := new(ResultData)
	data.PageNum = page
	data.PageSize = pageSize

	filter := bson.D{}

	gender, _ := strconv.Atoi(info.Gender)
	if info.Gender == "" {
		filter = bson.D{
  
  {"gender",gender}}
	}
	if info.Address != "" {
		filter = bson.D{
  
  {"address", info.Address}}
	}

	//if info.Height != "" {
	//	selectInfo := new(primitive.E)
	//	selectInfo.Key = "height"
	//
04-26 123
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值