|
@@ -207,19 +207,30 @@ func (conditions *Conditions) Args() []any {
|
|
|
// 返回值:
|
|
// 返回值:
|
|
|
// - 构造的AND条件语句
|
|
// - 构造的AND条件语句
|
|
|
func (conditions *Conditions) And() string {
|
|
func (conditions *Conditions) And() string {
|
|
|
|
|
+ return conditions.formClause("AND")
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+// OR 获取构造的OR条件语句
|
|
|
|
|
+// 参数: 无
|
|
|
|
|
+// 返回值:
|
|
|
|
|
+// - 构造的AND条件语句
|
|
|
|
|
+func (conditions *Conditions) OR() string {
|
|
|
|
|
+ return conditions.formClause("OR")
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+func (conditions *Conditions) formClause(conditionOperator string) string {
|
|
|
if conditions.queries == nil || len(conditions.queries) == 0 {
|
|
if conditions.queries == nil || len(conditions.queries) == 0 {
|
|
|
return ""
|
|
return ""
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
stringBuilder := strings.Builder{}
|
|
stringBuilder := strings.Builder{}
|
|
|
- stringBuilder.WriteString("WHERE ")
|
|
|
|
|
-
|
|
|
|
|
- for _, query := range conditions.queries {
|
|
|
|
|
|
|
+ for i, query := range conditions.queries {
|
|
|
stringBuilder.WriteString(query)
|
|
stringBuilder.WriteString(query)
|
|
|
- stringBuilder.WriteString(" AND ")
|
|
|
|
|
- }
|
|
|
|
|
|
|
|
|
|
- stringBuilder.WriteString("1 = 1")
|
|
|
|
|
|
|
+ if i != len(conditions.queries)-1 {
|
|
|
|
|
+ stringBuilder.WriteString(" " + conditionOperator + " ")
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
return stringBuilder.String()
|
|
return stringBuilder.String()
|
|
|
}
|
|
}
|