summaryrefslogtreecommitdiff
path: root/sql/CMakeLists.txt
diff options
context:
space:
mode:
authorOleg Smirnov <olernov@gmail.com>2023-02-17 19:21:30 +0700
committerOleg Smirnov <olernov@gmail.com>2023-04-25 20:21:35 +0700
commitf0b665f880bb6a6864660818d926fde9db18fa3e (patch)
tree98c94847fde17e9d25780d65075191547cf61812 /sql/CMakeLists.txt
parent54c11273e340620f319d0675166bd04b6e64db26 (diff)
downloadmariadb-git-f0b665f880bb6a6864660818d926fde9db18fa3e.tar.gz
MDEV-8320 Allow index usage for DATE(col) <=> const and YEAR <=> const
Rewrite datetime comparison conditions into sargeable. For example, YEAR(col) <= val -> col <= YEAR_END(val) YEAR(col) < val -> col < YEAR_START(val) YEAR(col) >= val -> col >= YEAR_START(val) YEAR(col) > val -> col > YEAR_END(val) YEAR(col) = val -> col BETWEEN YEAR_START(val) AND YEAR_END(val) Do the same with DATE(col), for example: DATE(col) <= val -> col <= DAY_END(val) After such a rewrite index lookup on column "col" can be employed
Diffstat (limited to 'sql/CMakeLists.txt')
-rw-r--r--sql/CMakeLists.txt4
1 files changed, 3 insertions, 1 deletions
diff --git a/sql/CMakeLists.txt b/sql/CMakeLists.txt
index 2ac802314ee..9ef1ee46d5c 100644
--- a/sql/CMakeLists.txt
+++ b/sql/CMakeLists.txt
@@ -111,7 +111,9 @@ SET (SQL_SOURCE
mf_iocache.cc my_decimal.cc
mysqld.cc net_serv.cc keycaches.cc
../sql-common/client_plugin.c
- opt_range.cc opt_sum.cc
+ opt_range.cc
+ opt_rewrite_date_cmp.cc
+ opt_sum.cc
../sql-common/pack.c parse_file.cc password.c procedure.cc
protocol.cc records.cc repl_failsafe.cc rpl_filter.cc
session_tracker.cc