Beego查询数据

package controllers

import (
	"BeegoStudy/models"
	"fmt"

	"github.com/astaxie/beego"
	"github.com/astaxie/beego/orm"
)

type QueryTableTest struct {
	beego.Controller
}

func (qt *QueryTableTest) Get() {
	//QueryTable接口的使用

	o := orm.NewOrm()
	qs := o.QueryTable(new(models.Users))
	user := models.Users{}

	//1.查询所有数据取第一条
	qs.One(&user)
	fmt.Printf("user: %v\n", user)

	//2.查询所有数据
	var users []models.Users
	qs.All(users)
	fmt.Printf("users: %v\n", users)

	//3.过滤查询
	qs.Filter("age__gt", 18).All(users)
	fmt.Printf("user: %v\n", user)

	//4.排除查询
	qs.Exclude("name", "张三").All(users)

	//6.limit和offset查询
	qs.Limit(5).Offset(10).All(users) //从查询到的数据数据中偏移10条,查询5条

	//7.分组查询(注意:分组查询只返回每个分组的第一条数据)
	qs.GroupBy("age").All(users)
	fmt.Printf("users: %v\n", users)

	//8.orderBy排序(默认升序)
	qs.OrderBy("age").All(users)
	//降序
	qs.OrderBy("-age").All(users)

	//9.去重查询[默认是全部字段不重复]
	qs.Distinct().All(users)
	//指定字段不重复
	qs.Distinct().All(users, "age", "address")

	//10.统计数据条数
	total, err := qs.Count()
	if err != nil {
		fmt.Printf("total: %v\n", total)
	}

	//11.判断指定条件数据是否存在
	isExist := qs.Filter("name", "张三").Exist()
	fmt.Printf("isExist: %v\n", isExist)

}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值