我有一个像这样的User
结构:
type User struct {
Username string `json:"username" bson:"username"`
AuthorizationKey string `json:"authorization_key" bson:"authorization_key"`
IsActive bool `json:"is_active" bson:"is_active"`
}
现在我可以使用查询整个username
user := &User{}
if err := db.Where(&User{
Username: username,
}).Find(&user).Error; err != nil {
return user, err
}
我将此语句用于like
查询(普通查询)db.Where("username LIKE ?", fmt.Sprintf("%%%s%%", username)).Find(&users)
是否可以对结构格式的用户名字段使用like
查询?大于或小于呢?
最佳答案
我认为这是不可能的,在条件相等的字段中使用struct(Ref)
db.Where(&User{ Username: username})
对于Like/gte/lte
查询,您必须在where()
内使用普通SQLdb.Where("username LIKE ?", fmt.Sprintf("%%%s%%", username)).Find(&users)
引用here
关于postgresql - 使用Postgres在GORM中使用struct的like/gte/lte查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62726743/