首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >错误1491 (HY000):分区函数返回错误的类型

错误1491 (HY000):分区函数返回错误的类型
EN

Stack Overflow用户
提问于 2019-02-20 10:34:06
回答 1查看 118关注 0票数 0

mytable如下所示:

代码语言:javascript
复制
 CREATE TABLE `test1` (
   `id` int(11) NOT NULL AUTO_INCREMENT,
   `project_id` int(11) NOT NULL,
  `md5` varchar(255) NOT NULL,
  `create_time` datetime NOT NULL,
  `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`,`project_id`,`md5`),
  KEY `index_id` (`md5`),
 ) ;

我想按md5进行分区。所以我创建了一个函数:

代码语言:javascript
复制
   alter table test1 partition by HASH(FLOOR(`md5`)) PARTITIONS 5;

但它失败了:

代码语言:javascript
复制
    ERROR 1491 (HY000) The PARTITION function returns the wrong type

非常感谢!

EN

回答 1

Stack Overflow用户

发布于 2019-03-04 07:26:25

FLOOR需要一个数值参数。如果MD5字符串为c51ce410c124a10e0db5e4b97fc2af39,则将其视为0。近一半的md5s将被视为零。

散列分区实际上是无用的。它肯定不会提供任何性能。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54777988

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档