如何使用JdbcContext在Apache元模型中表示自联接



考虑我有一个employee表,它包含以下字段id, name, email, phone, joining_date, manager, department。现在,在该表中,manager字段可用于创建自联接并得出一个结果集,该结果集显示员工e1向经理m1报告。如何使用JdbcDataContextQueryPOJO来表示这一点?这里的任何建议都会很有帮助。

您可以像MetaModel中的任何其他联接一样执行自联接。这里有一个例子:

DataContext dc = ...
Table t = dc.getDefaultSchema().getTableByName("employees");
FromItem left = new FromItem(t).setAlias("e1");
FromItem right = new FromItem(t).setAlias("e2");
SelectItem id = new SelectItem(t.getColumnByName("id"), left);
SelectItem name = new SelectItem(t.getColumnByName("name"), left);
SelectItem manager = new SelectItem(t.getColumnByName("id"), right);
SelectItem managerName = new SelectItem(t.getColumnByName("name"), right);
DataSet ds = dc.query().from(left).innerJoin(right).on(id, manager).select(name, managerName).execute()

最新更新