Skip to content

链式 CURD - 条件方法

所有条件方法返回 cDataBase 对象,可自由叠加组合。详细架构参见 链式 CURD 概述


Where - WHERE 条件

设置 WHERE AND 条件,支持 ? 占位符 + 参数自动转义。

语法

vb
Function Where(ByVal Condition As String, ParamArray Params() As Variant) As cDataBase

示例

vb
' 简单条件
db.Table("users").Where("age > 18").RowRead

' 占位符参数(自动转义单引号)
db.Table("users").Where("name=?", "张三").RowRead

' 多参数
db.Table("users").Where("name=? AND age>?", "张三", 18).RowRead

OrWhere - OR 条件

添加 OR 条件,与 Where 的 AND 条件用 OR 连接。

语法

vb
Function OrWhere(ByVal Condition As String, ParamArray Params() As Variant) As cDataBase

示例

vb
' AND + OR 组合
' 生成 SQL: WHERE age > 18 OR (status = 'VIP')
db.Table("users").Where("age>?", 18).OrWhere("status=?", "VIP").RowRead

' 多个 OrWhere
' 生成 SQL: WHERE age > 18 OR (role='admin' OR role='super')
db.Table("users").Where("age>?", 18).OrWhere("role='admin'").OrWhere("role='super'").RowRead

WhereIn - IN 条件

字段值在指定列表中。支持逗号分隔字符串或多参数形式。

语法

vb
Function WhereIn(ByVal FieldName As String, ParamArray Values() As Variant) As cDataBase

示例

vb
' 逗号分隔字符串形式
db.Table("users").WhereIn("status", "active,pending,closed").RowRead

' 多参数形式
db.Table("users").WhereIn("id", 1, 2, 3, 5, 8).RowRead

' 组合其他条件
db.Table("users").Where("age>?", 18).WhereIn("dept", "IT,HR").RowRead

WhereNotIn - NOT IN 条件

字段值不在指定列表中。

语法

vb
Function WhereNotIn(ByVal FieldName As String, ParamArray Values() As Variant) As cDataBase

示例

vb
' 排除指定角色
db.Table("users").WhereNotIn("role", "admin,root,superadmin").RowRead

WhereBetween - BETWEEN 条件

字段值在两个值之间。

语法

vb
Function WhereBetween(ByVal FieldName As String, ByVal Value1 As Variant, ByVal Value2 As Variant) As cDataBase

示例

vb
' 年龄范围查询
db.Table("users").WhereBetween("age", 18, 30).RowRead

' 日期范围查询
db.Table("orders").WhereBetween("created_at", "2025-01-01", "2025-12-31").RowRead

' 组合条件
db.Table("users").Where("dept=?", "IT").WhereBetween("salary", 5000, 15000).RowRead

WhereNotBetween - NOT BETWEEN 条件

vb
db.Table("users").WhereNotBetween("age", 18, 30).RowRead

WhereLike - LIKE 模糊匹配

语法

vb
Function WhereLike(ByVal FieldName As String, ByVal Pattern As String) As cDataBase

示例

vb
' 包含匹配
db.Table("users").WhereLike("name", "%张%").RowRead

' 前缀匹配
db.Table("users").WhereLike("email", "admin%").RowRead

' 组合其他条件
db.Table("users").Where("dept=?", "IT").WhereLike("name", "%张%").RowRead

WhereNotLike - NOT LIKE

vb
db.Table("users").WhereNotLike("name", "%test%").RowRead

WhereNull - IS NULL 条件

语法

vb
Function WhereNull(ByVal FieldName As String) As cDataBase

示例

vb
' 查询未删除的记录
db.Table("users").WhereNull("deleted_at").RowRead

' 查询未设置邮箱的用户
db.Table("users").WhereNull("email").RowRead

WhereNotNull - IS NOT NULL 条件

vb
' 查询已验证邮箱的用户
db.Table("users").WhereNotNull("email_verified_at").RowRead

最后更新: 2026-06-26

VB6及其LOGO版权为微软公司所有