给定数据库 d 上的任意 datomic 查询 q,是否有可能从 q 派生一个查询 x,当对 d 运行时将返回在 d 上产生 q 的结果所需的所有相关数据 r?q 对 d 的结果应该等于 q 对 r 的结果。
我正在尝试将 datomic 与 datascript 客户端同步。我事先知道所有查询,并且我想在 datascript 中创建我的 datomic 数据库的一个子集,限制为与客户端查询相关的数据。为简单起见,假设没有参数化查询,尽管 Id 期望使用占位符,对于任意查询输入参数可能会达到相同的效果,并且允许它们的解决方案将是首选。
我知道我可以通过修改它并针对数据库运行它来获取查询返回的所有实体 id,然后触摸所有这些实体,但我希望有更有效的方法,只返回与 a 相关的实体基准的子集查询,并且可以从查询 q ALONE 派生,而不必先在 d 上运行 q。
谢谢。