首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用mysql中的"HASH PARTITIONING“查找每个分区中的行数

使用mysql中的"HASH PARTITIONING“查找每个分区中的行数
EN

Stack Overflow用户
提问于 2021-01-17 19:10:48
回答 1查看 121关注 0票数 0

我读了一本关于"SQL查询“的书,在”用于分区的散列方法“一节中,我找到了我将在这里发布的查询。我试着让我的本地主机在"WAMPSERVER“上运行。以下是查询:

代码语言:javascript
复制
CREATE TABLE courses
( id_course INT NOT NULL,
course_name VARCHAR(300) NOT NULL,
course_level ENUM('beginner', 'intermediate', 'advanced')
)
PARTITION BY HASH (id_course)
PARTITIONS 5 (PARTITION C1, PARTITION C2, PARTITION C3, PARTITION C4, PARTITION C5);

之后,我在我的表中插入了10行。下面是表格行的图片:

之后,我尝试找出位于每个分区中的行数。这本书提出了这个问题:

但问题是,在查询的输出中,书中的"partition_rowcount“列与我的不一样。我(仅供参考)解释说这本书有4个分区,并将它们命名为"H1 to H4“。下面是book的输出:

我想知道问题出在哪里,为什么我的输出不同于书本。我知道还有其他查询来查找每个分区中的行,但我不能理解这种差异的原因。

EN

回答 1

Stack Overflow用户

发布于 2021-01-17 20:02:08

您的结果是一个十六进制字符串,它表明数据类型出现了问题。这在https://bugs.mysql.com/bug.php?id=56642中有解释。尝试显式地将count转换为字符串,以便它可以正常地与其他字符串连接:

代码语言:javascript
复制
Select concat("# of rows in H1",(cast count(*) as char)) partition_rowcount
From courses partition (c1)
...
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65759880

复制
相关文章

相似问题

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