在 MySQL 5.1 上,如何查询特定分区?
Posted
技术标签:
【中文标题】在 MySQL 5.1 上,如何查询特定分区?【英文标题】:On MySQL 5.1, how can I query a specific partition? 【发布时间】:2013-02-20 00:39:14 【问题描述】:我需要在分区表上运行查询,并且我想要按分区的结果,如下所示:
partition result count
----------- ---------- ------
p1 apples 2
p1 oranges 3
p2 apples 10
p2 oranges 15
从官方的 mysql 在线文档中,如果我们有 5.6 或更高版本,我们可以使用 PARTITION 子句来指定从哪里获取数据,但我们目前停留在5.1.63。无论表的分区方案如何,是否有一种简单的方法可以做到这一点?
【问题讨论】:
【参考方案1】:我不相信你可以在 MySQL 5.1 中。
您可以解决它 - 无论分区定义如何,您都可以将其作为条件添加到您的计数中。
例如如果是ID列上的范围分区,p1的ID
SELECT result, partition, count(ID)
FROM
(
SELECT result, ID,
case when ID < 10000 then p1
when ID < 20000 then p2
.....
end as partition
FROM
table
) s1
GROUP BY partition, result
【讨论】:
以上是关于在 MySQL 5.1 上,如何查询特定分区?的主要内容,如果未能解决你的问题,请参考以下文章