在已分区的MySQL表的特定分区上运行查询

时间:2018-10-25 01:33:28

标签: ecto

我想在已分区的MySQL表的特定分区上运行Ecto.Query.from

示例表:

CREATE TABLE `dogs` (
  `dog_id` bigint(20) unsigned NOT NULL,
   ...
  PRIMARY KEY (`dog_id`),
) ENGINE=InnoDB DEFAULT CHARSET=utf8
/*!50100 PARTITION BY HASH (dog_id)
PARTITIONS 10 */ 

理想的查询,查询我想实现的目标

from(i in dogs, select: i.dog_id, partition: "p1")

以上方法对c无效,因此 我已经通过将查询转换为字符串来实现了 Ecto.Adapters.SQL.to_sql并对其进行编辑。

... <> "PARTITION (#{partition}) AS" <> ...

这感觉很hacky,可能会在将来的版本中破坏, 有没有办法用Ecto实现这一目标?

0 个答案:

没有答案