7
7
import net .sf .jsqlparser .expression .Function ;
8
8
import net .sf .jsqlparser .expression .LongValue ;
9
9
import net .sf .jsqlparser .expression .StringValue ;
10
- import net .sf .jsqlparser .expression .operators .relational .ComparisonOperator ;
11
- import net .sf .jsqlparser .expression .operators .relational .EqualsTo ;
12
- import net .sf .jsqlparser .expression .operators .relational .ExpressionList ;
13
- import net .sf .jsqlparser .expression .operators .relational .GreaterThan ;
14
- import net .sf .jsqlparser .expression .operators .relational .GreaterThanEquals ;
15
- import net .sf .jsqlparser .expression .operators .relational .InExpression ;
16
- import net .sf .jsqlparser .expression .operators .relational .LikeExpression ;
17
- import net .sf .jsqlparser .expression .operators .relational .MinorThan ;
18
- import net .sf .jsqlparser .expression .operators .relational .MinorThanEquals ;
10
+ import net .sf .jsqlparser .expression .operators .relational .*;
19
11
import net .sf .jsqlparser .schema .Column ;
20
12
import org .apache .commons .collections .CollectionUtils ;
21
13
@@ -34,6 +26,29 @@ public FieldAndValueAcquireVisitor(Set<FieldExpression> fieldExpressions) {
34
26
this .fieldExpressions = fieldExpressions ;
35
27
}
36
28
29
+ public void visit (Between between ) {
30
+ Expression leftExpression = between .getLeftExpression ();
31
+ String columnName = null ;
32
+ if (leftExpression instanceof Column ) {
33
+ Column column = (Column ) leftExpression ;
34
+ columnName = column .getColumnName ();
35
+ }
36
+ Expression betweenExpressionStart = between .getBetweenExpressionStart ();
37
+ Expression betweenExpressionEnd = between .getBetweenExpressionEnd ();
38
+
39
+ FieldExpression fieldExpressionStart = new FieldExpression ();
40
+ fieldExpressionStart .setFieldName (columnName );
41
+ fieldExpressionStart .setFieldValue (getFieldValue (betweenExpressionStart ));
42
+ fieldExpressionStart .setOperator (JsqlConstants .GREATER_THAN_EQUALS );
43
+ fieldExpressions .add (fieldExpressionStart );
44
+
45
+ FieldExpression fieldExpressionEnd = new FieldExpression ();
46
+ fieldExpressionEnd .setFieldName (columnName );
47
+ fieldExpressionEnd .setFieldValue (getFieldValue (betweenExpressionEnd ));
48
+ fieldExpressionEnd .setOperator (JsqlConstants .MINOR_THAN_EQUALS );
49
+ fieldExpressions .add (fieldExpressionEnd );
50
+ }
51
+
37
52
public void visit (LikeExpression expr ) {
38
53
Expression leftExpression = expr .getLeftExpression ();
39
54
Expression rightExpression = expr .getRightExpression ();
0 commit comments