lightdb支持distinct ... connect by的使用

发布时间 2023-09-13 10:51:31作者: 小小罗的背影

在LightDB 23.3版本中,支持DISTINCT 与CONNECT BY联合使用(具体connect by使用可参考文章:https://blog.csdn.net/s_lisheng/article/details/128331881,https://blog.csdn.net/qq_22066003/article/details/128339067)

使用 DISTINCT 和 CONNECT BY 可以实现一些特定的查询操作。

DISTINCT 用于返回唯一不同的值。它可以用于单个列或多个列,以消除结果集中的重复值。例如,以下查询将返回一个列表中不同的城市名称:

SELECT DISTINCT city_name FROM table_name;

CONNECT BY 用于在查询中生成层次结构。它基于表中的父子关系列(通常是自引用的外键列),递归地连接行,以构建树状结构。以下是一个示例查询,假设有一个名为 "employees" 的表,其中包含员工的 ID、姓名和上级的 ID:

SELECT employee_id, employee_name, manager_id, LEVEL FROM employees START WITH employee_id = 1 CONNECT BY PRIOR employee_id = manager_id;

上述查询将从具有 ID 为 1 的员工开始,逐级向上连接上级,直到达到树的根节点。LEVEL 列表示每个员工在层次结构中的级别。

在LightDB中两者具体使用举例如下: