You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
218 lines
7.8 KiB
218 lines
7.8 KiB
--disable_warnings
|
|
drop table if exists t1;
|
|
--enable_warnings
|
|
|
|
create table t1 (col1 datetime)
|
|
partition by range(datediff(col1,col1))
|
|
(partition p0 values less than (10), partition p1 values less than (30));
|
|
drop table t1;
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(greatest(col1,10))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(isnull(col1))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(least(col1,12))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(case when col1>0 then 10 else 20 end)
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(ifnull(col1,5))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(nullif(col1,5))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(bit_length(col1))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 char(5))
|
|
partition by range(bit_length(col1))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(char_length(col1))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 char(5))
|
|
partition by range(char_length(col1))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 char(5))
|
|
partition by range(character_length(col1))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(find_in_set(col1,1))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 char(5))
|
|
partition by range(find_in_set(col1,'1'))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(instr(col1,3))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 char(5))
|
|
partition by range(instr(col1,'3'))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 char(5))
|
|
partition by range(length(col1))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 char(5))
|
|
partition by range(locate(1,col1))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(locate(1,col1))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 char(5))
|
|
partition by range(octet_length(col1))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 char(5))
|
|
partition by range(position(1 in col1))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(position(1 in col1))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 char(5))
|
|
partition by range(strcmp(col1,2))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(strcmp(col1,2))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(crc32(col1))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(round(col1))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(sign(col1))
|
|
(partition p0 values less than (2), partition p1 values less than (6));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 datetime)
|
|
partition by range(period_add(col1,5))
|
|
(partition p0 values less than (10), partition p1 values less than (30));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 datetime, col2 datetime)
|
|
partition by range(period_diff(col1,col2))
|
|
(partition p0 values less than (10), partition p1 values less than (30));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int, col2 int)
|
|
partition by range(period_diff(col1,col2))
|
|
(partition p0 values less than (10), partition p1 values less than (30));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 datetime)
|
|
partition by range(timestampdiff(day,5,col1))
|
|
(partition p0 values less than (10), partition p1 values less than (30));
|
|
|
|
-- error ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR
|
|
create table t1 (col1 date)
|
|
partition by range(unix_timestamp(col1))
|
|
(partition p0 values less than (10), partition p1 values less than (30));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 datetime)
|
|
partition by range(week(col1))
|
|
(partition p0 values less than (10), partition p1 values less than (30));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 varchar(25))
|
|
partition by range(cast(col1 as signed))
|
|
(partition p0 values less than (10), partition p1 values less than (30));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 varchar(25))
|
|
partition by range(convert(col1,unsigned))
|
|
(partition p0 values less than (10), partition p1 values less than (30));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(col1 | 20)
|
|
(partition p0 values less than (10), partition p1 values less than (30));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(col1 & 20)
|
|
(partition p0 values less than (10), partition p1 values less than (30));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(col1 ^ 20)
|
|
(partition p0 values less than (10), partition p1 values less than (30));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(col1 << 20)
|
|
(partition p0 values less than (10), partition p1 values less than (30));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(col1 >> 20)
|
|
(partition p0 values less than (10), partition p1 values less than (30));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(~col1)
|
|
(partition p0 values less than (10), partition p1 values less than (30));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(bit_count(col1))
|
|
(partition p0 values less than (10), partition p1 values less than (30));
|
|
|
|
-- error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
|
|
create table t1 (col1 int)
|
|
partition by range(inet_aton(col1))
|
|
(partition p0 values less than (10), partition p1 values less than (30));
|
|
|