图形数据库中有两个表。用户{ id,name}组{ id,name}
用户通过边缘连接到组。不,我想通过apache calcite使用where子句select * from User where User.Group.id="Foo“来查询
由于apache calcite接受具有预定义表和预定义列的架构,因此上述查询在验证步骤中失败。实现此目的的一种方法是将user定义为四列{id,name,Group.id,Group.name}。现在问题是在我的例子中,一个表可以连接到多个其他表,深度可以达到6个深度。用lead创建一个包含其子类的所有列的表,就会得到一个包含许多动态列的表。
有没有办法将表中的列定义为它们在查询中的显示方式。
发布于 2019-05-11 05:15:04
查看已解决问题https://issues.apache.org/jira/browse/CALCITE-1150。
它将DynamicRecordType引入到Apache方解石中。这里是建议的规范https://docs.google.com/document/d/1vCWlqRyJQCtYbtVAjGOKP-8BD4_hrhoM9-4qbdoJs6k/edit。
我想Apache Drill项目正在使用它,请参见https://github.com/apache/drill/search?q=DynamicRecordType。
https://stackoverflow.com/questions/55792723
复制相似问题