代码拉取完成,页面将自动刷新
package xgorm
// Where搜索
// 此搜索条件和gorm的where等同
//
// query 查询条件
// args 附加参数
func (c *XDB) Where(query any, args ...any) *XDB {
if c == nil || c.DB == nil {
return c
}
if query == "" {
return c
}
c.DB = c.DB.Where(query, args...)
return c
}
// When搜索
// 此搜索条件和gorm的where等同,最前方多了一层If bool的判断
//
// when 判断注入的When条件,只有此处为true时才会注入后方的where条件
// query 查询条件
// args 附加参数
func (c *XDB) When(when bool, query any, args ...any) *XDB {
if !when {
return c
}
if query == "" {
return c
}
if c == nil || c.DB == nil {
return c
}
c.DB = c.DB.Where(query, args...)
return c
}
// Where条件
//
// query 查询条件
// args 附加参数
func (db *XDB) Not(query interface{}, args ...interface{}) *XDB {
if db == nil || db.DB == nil {
return db
}
db.DB = db.DB.Not(query, args...)
return db
}
// Where条件
//
// query 查询条件
// args 附加参数
func (db *XDB) Or(query interface{}, args ...interface{}) *XDB {
if db == nil || db.DB == nil {
return db
}
db.DB = db.DB.Or(query, args...)
return db
}
// Between 范围检索
//
// field 待检索的条件
// start 开始条件
// end 结束条件
func (db *XDB) Between(field string, start, end any) *XDB {
if field == "" {
return db
}
if db == nil || db.DB == nil {
return db
}
db.DB = db.DB.Where(field+" BETWEEN ? AND ?", start, end)
return db
}
// When Between 范围检索
//
// when 判断注入的When条件,只有此处为true时才会注入后方的where条件
// field 待检索的条件
// start 开始条件
// end 结束条件
func (db *XDB) WhenBetween(when bool, field string, start, end any) *XDB {
if !when {
return db
}
if field == "" {
return db
}
if db == nil || db.DB == nil {
return db
}
db.DB = db.DB.Where(field+" BETWEEN ? AND ?", start, end)
return db
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。