[Beego模型] 一、ORM 使用方法

[Beego模型] 二、CRUD 操作

[Beego模型] 三、高级查询

[Beego模型] 四、使用SQL语句进行查询

[Beego模型] 五、构造查询

[Beego模型] 六、事务处理

QueryBuilder 提供了一个简便,流畅的 SQL 查询构造器。在不影响代码可读性的前提下用来快速的建立 SQL 语句。

QueryBuilder 在功能上与 ORM 重合, 但是各有利弊。ORM 更适用于简单的 CRUD 操作,而 QueryBuilder 则更适用于复杂的查询,例如查询中包含子查询和多重联结。

使用方法:

// User 包装了下面的查询结果
type User struct {Name stringAge  int
}
var users []User// 获取 QueryBuilder 对象. 需要指定数据库驱动参数。
// 第二个返回值是错误对象,在这里略过
qb, _ := orm.NewQueryBuilder("mysql")// 构建查询对象
qb.Select("user.name","profile.age").From("user").InnerJoin("profile").On("user.id_user = profile.fk_user").Where("age > ?").OrderBy("name").Desc().Limit(10).Offset(0)// 导出 SQL 语句
sql := qb.String()// 执行 SQL 语句
o := orm.NewOrm()
o.Raw(sql, 20).QueryRows(&users)

完整 API 接口:

type QueryBuilder interface {Select(fields ...string) QueryBuilderFrom(tables ...string) QueryBuilderInnerJoin(table string) QueryBuilderLeftJoin(table string) QueryBuilderRightJoin(table string) QueryBuilderOn(cond string) QueryBuilderWhere(cond string) QueryBuilderAnd(cond string) QueryBuilderOr(cond string) QueryBuilderIn(vals ...string) QueryBuilderOrderBy(fields ...string) QueryBuilderAsc() QueryBuilderDesc() QueryBuilderLimit(limit int) QueryBuilderOffset(offset int) QueryBuilderGroupBy(fields ...string) QueryBuilderHaving(cond string) QueryBuilderSubquery(sub string, alias string) stringString() string
}

摘自:https://beego.me/docs/mvc/model/querybuilder.md

转载于:https://www.cnblogs.com/52php/p/7380327.html

[Beego模型] 五、构造查询相关推荐

  1. [Beego模型] 三、高级查询

    [Beego模型] 一.ORM 使用方法 [Beego模型] 二.CRUD 操作 [Beego模型] 三.高级查询 [Beego模型] 四.使用SQL语句进行查询 [Beego模型] 五.构造查询 [ ...

  2. 因果模型五:用因果的思想优化风控模型——因果正则化评分卡模型

    因果模型五:用因果的思想优化风控模型--因果正则化评分卡模型 一.模型中的因果和相关 二.不可知样本选择偏差 三.因果推断 四.因果与评分卡的融合 五.模型效果评估 5.1 人工合成数据效果测试 5. ...

  3. Django–模型层orm查询

    文章目录 Django–模型层orm查询 一.单表查询(增.删.改.查) 基本查询 下划线查询 二.外键字段(增.删.改.查) 一对多 多对多 三.多表查询 多表查询的方式 正反向的概念 基于对象的跨 ...

  4. Spring JPA使用CriteriaBuilder动态构造查询

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://www.cnblogs.com/mzdljgz/p/11495723 ...

  5. Django框架(14.Django中模型类的关系,以及模型类关联查询)

    Django中模型类的关系,以及模型类关联查询 1.模型类关系 1.1 一对多关系 1.2多对多关系 1.3 一对一关系 1.4 一对多举例: 1.5 多对多举例: 1.6 一对一举例: 2.关联查询 ...

  6. php ci model条件查询,Laravel关系模型指定条件查询方法

    对于关系模型来说,有时候我们需要甄别关联后结果,例如,班级和学生是一对多关联,我现在查询班级,但是想只显示正常状态,即状态为1的学生,因为有的学生从这个班级里面删除了,状态是4,那么我们在查询的时候就 ...

  7. FreeSql (十五)查询数据

    FreeSql在查询数据下足了功能,链式查询语法.多表查询.表达式函数支持得非常到位. IFreeSql fsql = new FreeSql.FreeSqlBuilder().UseConnecti ...

  8. wow修改人物模型_抖音爆款心法:一个模型+五组案例

    做抖音最悲伤的,莫过于用户刷到你的时候,瞟一眼就继续往下滑了.再好笑的段子,再精良的制作,用户直接往下滑,一点机会都不给你.虽然短视频只有15秒,但真正决定生死的是开头那 5 秒.3 秒,甚至 1 秒 ...

  9. Hive(五)——查询

    Hive(五)--查询 SELECT- FROM语句,一般情况不再赘述,以下展示复合数据结构如何取值 # 先提供几条数据与建表语句,方便随手练习 John Doe!100000.0!Mary Smit ...

最新文章

  1. python转化为字符串格式_Python格式化字符串~转
  2. Even for transaction data request, metadata is still needed as prerequisite
  3. Teamviewer
  4. .wav格式的声音文件怎么变成matlab 中的.mat文件
  5. bash 脚本_实用的 bash 自定义脚本,快速提效工作流程
  6. PHP 输入一棵二叉树和一个数字n,要求找出路径和为n的所有路径
  7. vue脚手架搭建项目的兼容性配置
  8. 大数据概念思维导图_【数据整理】一份思维导图,学完Tableau Prep(下)
  9. 【Web前端面试笔试题】2022.08
  10. GRPC: 如何优雅关闭进程(graceful shutdown)?
  11. mysql 订单表与商品表_数据库——订单表中有不同类型的商品,表的设计
  12. 2021年爱尔兰卫生医疗系统勒索病毒事件
  13. iOS—APP打包上线流程
  14. linux ubuntu配置要求,Ubuntu Server 14.04和Kylin 14.04 Enhanced Release amd64最低硬件配置要求...
  15. iphone13是双卡双待吗?
  16. excel图表配合下拉菜单_在下拉列表中选择Excel仪表盘图表
  17. 一个基层管理者需要做好的几个方面
  18. 36氪上的这七家程序员网站你都了解吗?
  19. 盘点为云计算发展做出贡献的十位先驱
  20. 公益创投丨“心探家”暑期研学营开始报名啦~邀您一起感知文化,感知内心

热门文章

  1. struts2中的session使用
  2. windows7下bcdedit出现“拒绝访问”解决办法
  3. 北京治堵新方案出台了!
  4. IBM ThinkPad错误代码列表
  5. 输出源文件的标题,目前执行行的行数,编译时间
  6. [Java] 蓝桥杯ALGO-61 算法训练 奇偶判断
  7. [Java] 蓝桥杯 BASIC-5 基础练习 查找整数
  8. 遍历删除List中的元素,会报错? 用iterator.remove() 完美解决
  9. Javascript设计模式(五)代理模式
  10. img 标签的 src 属性