# # Test PERIOD_ADD() function # Author: Bharath, bharath.bokka@mariadb.com # -- source ../include/have_columnstore.inc --disable_warnings DROP DATABASE IF EXISTS mcs220_db; --enable_warnings CREATE DATABASE mcs220_db; USE mcs220_db; CREATE TABLE t1(t1_d DATE, t1_t TIME, t1_dt DATETIME)ENGINE=Columnstore; INSERT INTO t1 VALUES(NULL, NULL, NULL); INSERT INTO t1 VALUES('2222-11-11', '12:12:12', '2020-11-11 12:12:12'); INSERT INTO t1 VALUES('2020-01-01', '11:11:11', '2020-12-31 12:34:56'); INSERT INTO t1 VALUES('2016-02-01', '11:11:11', '2017-02-01 12:12:12'); SELECT PERIOD_ADD(200101, 0); SELECT PERIOD_ADD(200101, 2); SELECT PERIOD_ADD(201001, 1); SELECT PERIOD_ADD(201505, -2); SELECT t1_dt, EXTRACT(YEAR_MONTH FROM t1_dt), PERIOD_ADD(EXTRACT(YEAR_MONTH FROM t1_dt), 0) FROM t1 ORDER BY 1; SELECT t1_dt, EXTRACT(YEAR_MONTH FROM t1_dt), PERIOD_ADD(EXTRACT(YEAR_MONTH FROM t1_dt), 1) FROM t1 ORDER BY 1; SELECT t1_dt, EXTRACT(YEAR_MONTH FROM t1_dt), PERIOD_ADD(EXTRACT(YEAR_MONTH FROM t1_dt), 3) FROM t1 ORDER BY 1; SELECT t1_dt, EXTRACT(YEAR_MONTH FROM t1_dt), PERIOD_ADD(EXTRACT(YEAR_MONTH FROM t1_dt), -1) FROM t1 ORDER BY 1; SELECT t1_dt, EXTRACT(YEAR_MONTH FROM t1_dt), PERIOD_ADD(EXTRACT(YEAR_MONTH FROM t1_dt), -3) FROM t1 ORDER BY 1; SELECT t1_d, EXTRACT(YEAR_MONTH FROM t1_d), PERIOD_ADD(EXTRACT(YEAR_MONTH FROM t1_d), 0) FROM t1 ORDER BY 1; SELECT t1_d, EXTRACT(YEAR_MONTH FROM t1_d), PERIOD_ADD(EXTRACT(YEAR_MONTH FROM t1_d), 1) FROM t1 ORDER BY 1; SELECT t1_d, EXTRACT(YEAR_MONTH FROM t1_d), PERIOD_ADD(EXTRACT(YEAR_MONTH FROM t1_d), 3) FROM t1 ORDER BY 1; SELECT t1_d, EXTRACT(YEAR_MONTH FROM t1_d), PERIOD_ADD(EXTRACT(YEAR_MONTH FROM t1_d), -1) FROM t1 ORDER BY 1; SELECT t1_d, EXTRACT(YEAR_MONTH FROM t1_d), PERIOD_ADD(EXTRACT(YEAR_MONTH FROM t1_d), -3) FROM t1 ORDER BY 1; SELECT t1_t, EXTRACT(YEAR_MONTH FROM t1_t), PERIOD_ADD(EXTRACT(YEAR_MONTH FROM t1_t), 0) FROM t1 ORDER BY 1; SELECT t1_t, EXTRACT(YEAR_MONTH FROM t1_t), PERIOD_ADD(EXTRACT(YEAR_MONTH FROM t1_t), 1) FROM t1 ORDER BY 1; SELECT t1_t, EXTRACT(YEAR_MONTH FROM t1_t), PERIOD_ADD(EXTRACT(YEAR_MONTH FROM t1_t), 3) FROM t1 ORDER BY 1; SELECT t1_t, EXTRACT(YEAR_MONTH FROM t1_t), PERIOD_ADD(EXTRACT(YEAR_MONTH FROM t1_t), -1) FROM t1 ORDER BY 1; SELECT t1_t, EXTRACT(YEAR_MONTH FROM t1_t), PERIOD_ADD(EXTRACT(YEAR_MONTH FROM t1_t), -3) FROM t1 ORDER BY 1; --error ER_WRONG_PARAMCOUNT_TO_NATIVE_FCT SELECT PERIOD_ADD(EXTRACT(YEAR_MONTH FROM t1_t)) FROM t1; # Clean UP DROP DATABASE mcs220_db;