@@ -135,6 +135,23 @@ public static ConditionalExpression buildConditionalExpression(
135135 return new ConditionalExpression (column , operator );
136136 }
137137
138+ /**
139+ * Builds a like expression with the specified column, operator, and escape character.
140+ *
141+ * <p>This method is primarily for internal use. Breaking changes can and will be introduced to
142+ * this method. Users should not depend on it.
143+ *
144+ * @param column a target text column used to compare
145+ * @param operator an operator used to compare the target column. The operator must be either LIKE
146+ * or NOT_LIKE.
147+ * @param escape an escape character for the like operator
148+ * @return a conditional expression
149+ */
150+ public static ConditionalExpression buildLikeExpression (
151+ TextColumn column , Operator operator , String escape ) {
152+ return new LikeExpression (column , operator , escape );
153+ }
154+
138155 /**
139156 * Returns a builder object for a condition expression for PutIf/DeleteIf
140157 *
@@ -352,6 +369,7 @@ public ConditionalExpression isNotEqualToBlob(byte[] value) {
352369 public ConditionalExpression isNotEqualToBlob (ByteBuffer value ) {
353370 return new ConditionalExpression (columnName , value , Operator .NE );
354371 }
372+
355373 /**
356374 * Creates a 'not equal' conditional expression for a DATE value.
357375 *
@@ -391,6 +409,7 @@ public ConditionalExpression isNotEqualToTimestamp(LocalDateTime value) {
391409 public ConditionalExpression isNotEqualToTimestampTZ (Instant value ) {
392410 return new ConditionalExpression (TimestampTZColumn .of (columnName , value ), Operator .NE );
393411 }
412+
394413 /**
395414 * Creates a 'greater than' conditional expression for a BOOLEAN value.
396415 *
@@ -590,6 +609,7 @@ public ConditionalExpression isGreaterThanOrEqualToBlob(byte[] value) {
590609 public ConditionalExpression isGreaterThanOrEqualToBlob (ByteBuffer value ) {
591610 return new ConditionalExpression (columnName , value , Operator .GTE );
592611 }
612+
593613 /**
594614 * Creates a 'greater than or equal' conditional expression for a DATE value.
595615 *
@@ -709,6 +729,7 @@ public ConditionalExpression isLessThanBlob(byte[] value) {
709729 public ConditionalExpression isLessThanBlob (ByteBuffer value ) {
710730 return new ConditionalExpression (columnName , value , Operator .LT );
711731 }
732+
712733 /**
713734 * Creates a 'less than' conditional expression for a DATE value.
714735 *
@@ -748,6 +769,7 @@ public ConditionalExpression isLessThanTimestamp(LocalDateTime value) {
748769 public ConditionalExpression isLessThanTimestampTZ (Instant value ) {
749770 return new ConditionalExpression (TimestampTZColumn .of (columnName , value ), Operator .LT );
750771 }
772+
751773 /**
752774 * Creates a 'less than or equal' conditional expression for a BOOLEAN value.
753775 *
@@ -1029,6 +1051,7 @@ public ConditionalExpression isNotNullText() {
10291051 public ConditionalExpression isNotNullBlob () {
10301052 return new ConditionalExpression (BlobColumn .ofNull (columnName ), Operator .IS_NOT_NULL );
10311053 }
1054+
10321055 /**
10331056 * Creates an 'is not null' conditional expression for a DATE value.
10341057 *
0 commit comments