【发布时间】:2021-02-10 10:19:01
【问题描述】:
我可以像在 Oracle 中一样在 MariaDB 中创建函数索引吗?
create index fnc_idx on table_name (to_char(date_col, 'MM-YYYY'));
或任何替代解决方案...? 问候
【问题讨论】:
我可以像在 Oracle 中一样在 MariaDB 中创建函数索引吗?
create index fnc_idx on table_name (to_char(date_col, 'MM-YYYY'));
或任何替代解决方案...? 问候
【问题讨论】:
您可以使用计算列作为方法:
CREATE TABLE `orders` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`order_date` datetime NOT NULL,
-- add calculated column
`order_month` VARCHAR(6) AS (CONCAT(MONTH(order_date), YEAR(order_date))) PERSISTENT,
`client_id` int(11) NOT NULL,
PRIMARY KEY (`id`),
-- add calculated column index
INDEX (`order_month`)
);
【讨论】: