Commit 3a90d30
[fix](nereids) fix comparison with date like (#45735)
### What problem does this PR solve?
Issue Number: close #xxx
Related PR: #45382
Problem Summary:
#45382 had fix compare date/datev1 with datetime literal wrong cutting.
but it not fix completely.
```
if (right instanceof DateTimeLiteral) {
DateTimeLiteral dateTimeLiteral = (DateTimeLiteral) right;
right = migrateToDateV2(dateTimeLiteral);
if (dateTimeLiteral.getHour() != 0 || dateTimeLiteral.getMinute() != 0
|| dateTimeLiteral.getSecond() != 0) {
...
}
}
```
For the above code, if check right is date time literal, but notice that
datetimev2 literal is datetime literal's child class. so datetimev2
literal will also run the above code. And datetimev2 literal should
check its microseconds not equals to 0.
for example: `date_a = '2020-01-01 00:00:00.01'` should opt as `FALSE`,
but not `date_a = '2020-01-01'`.1 parent fe3632a commit 3a90d30Copy full SHA for 3a90d30
File tree
Expand file treeCollapse file tree
2 files changed
+25
-1
lines changedOpen diff view settings
Filter options
- fe/fe-core/src
- main/java/org/apache/doris/nereids/rules/expression/rules
- test/java/org/apache/doris/nereids/rules/expression/rules
Expand file treeCollapse file tree
2 files changed
+25
-1
lines changedOpen diff view settings
Collapse file
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/expression/rules/SimplifyComparisonPredicate.java
Copy file name to clipboardExpand all lines: fe/fe-core/src/main/java/org/apache/doris/nereids/rules/expression/rules/SimplifyComparisonPredicate.java+1-1Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| ||
176 | 176 | |
177 | 177 | |
178 | 178 | |
179 | | - |
| 179 | + |
180 | 180 | |
181 | 181 | |
182 | 182 | |
|
Collapse file
fe/fe-core/src/test/java/org/apache/doris/nereids/rules/expression/rules/SimplifyComparisonPredicateTest.java
Copy file name to clipboardExpand all lines: fe/fe-core/src/test/java/org/apache/doris/nereids/rules/expression/rules/SimplifyComparisonPredicateTest.java+24Lines changed: 24 additions & 0 deletions
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| ||
153 | 153 | |
154 | 154 | |
155 | 155 | |
| 156 | + |
| 157 | + |
| 158 | + |
| 159 | + |
| 160 | + |
| 161 | + |
| 162 | + |
| 163 | + |
| 164 | + |
| 165 | + |
| 166 | + |
| 167 | + |
156 | 168 | |
157 | 169 | |
158 | 170 | |
| ||
178 | 190 | |
179 | 191 | |
180 | 192 | |
| 193 | + |
| 194 | + |
| 195 | + |
| 196 | + |
| 197 | + |
| 198 | + |
| 199 | + |
| 200 | + |
| 201 | + |
| 202 | + |
| 203 | + |
| 204 | + |
181 | 205 | |
182 | 206 | |
183 | 207 | |
|
0 commit comments