Gorm-查询语法

2023-04-24 19:30:05 浏览数 (1)

1. 查询语法

Gorm 的查询语法采用了一种面向对象的方式,通过结构体和方法来构建查询条件。以下是 Gorm 常用的查询方法:

1.1 Find()

Find() 方法用于查询满足条件的所有记录。它接收一个结构体指针作为参数,用于存储查询结果。以下是 Find() 方法的基本用法:

代码语言:javascript复制
var users []User
db.Find(&users)

上面的代码将查询出 users 表中的所有记录,并将其存储在 users 切片中。

1.2 First()

First() 方法用于查询符合条件的第一条记录。它接收一个结构体指针作为参数,用于存储查询结果。以下是 First() 方法的基本用法:

代码语言:javascript复制
var user User
db.Where("name = ?", "jinzhu").First(&user)

上面的代码将查询出 name 为 "jinzhu" 的第一条记录,并将其存储在 user 变量中。

1.3 Where()

Where() 方法用于添加查询条件。它接收一个字符串作为条件,可以使用占位符 "?" 来代表参数。以下是 Where() 方法的基本用法:

代码语言:javascript复制
db.Where("name = ?", "jinzhu").Find(&users)

上面的代码将查询出 name 为 "jinzhu" 的所有记录,并将其存储在 users 切片中。

1.4 Order()

Order() 方法用于按照指定的字段排序查询结果。它接收一个字符串作为排序条件,可以使用 DESC 或 ASC 关键字来指定排序方向。以下是 Order() 方法的基本用法:

代码语言:javascript复制
db.Order("age desc").Find(&users)

上面的代码将按照 age 字段降序排列查询结果,并将其存储在 users 切片中。

1.5 Limit()

Limit() 方法用于限制查询结果的数量。它接收一个整数作为参数,表示最多查询出多少条记录。以下是 Limit() 方法的基本用法:

代码语言:javascript复制
db.Limit(10).Find(&users)

上面的代码将最多查询出 10 条记录,并将其存储在 users 切片中。

1.6 Offset()

Offset() 方法用于指定查询结果的偏移量。它接收一个整数作为参数,表示从查询结果的第几条记录开始返回。以下是 Offset() 方法的基本用法::

代码语言:javascript复制
db.Offset(10).Limit(10).Find(&users)

上面的代码将查询出从第 11 条记录开始的最多 10 条记录,并将其存储在 users 切片中。

go

0 人点赞