mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-08 00:24:41 +00:00
2.2 KiB
2.2 KiB
machine_translated | machine_translated_rev | toc_priority | toc_title |
---|---|---|---|
true | 72537a2d52 |
45 | Dictionnaires hiérarchiques |
Dictionnaires Hiérarchiques
Clickhouse prend en charge les dictionnaires hiérarchiques avec un touche numérique.
Voici une structure hiérarchique:
0 (Common parent)
│
├── 1 (Russia)
│ │
│ └── 2 (Moscow)
│ │
│ └── 3 (Center)
│
└── 4 (Great Britain)
│
└── 5 (London)
Cette hiérarchie peut être exprimée comme la table de dictionnaire suivante.
id_région | région_parent | nom_région |
---|---|---|
1 | 0 | Russie |
2 | 1 | Moscou |
3 | 2 | Center |
4 | 0 | La Grande-Bretagne |
5 | 4 | Londres |
Ce tableau contient une colonne parent_region
qui contient la clé du parent le plus proche de l'élément.
Clickhouse soutient le hiérarchique propriété pour externe dictionnaire attribut. Cette propriété vous permet de configurer le dictionnaire hiérarchique comme décrit ci-dessus.
Le dictGetHierarchy la fonction vous permet d'obtenir la chaîne parent d'un élément.
Pour notre exemple, la structure du dictionnaire peut être la suivante:
<dictionary>
<structure>
<id>
<name>region_id</name>
</id>
<attribute>
<name>parent_region</name>
<type>UInt64</type>
<null_value>0</null_value>
<hierarchical>true</hierarchical>
</attribute>
<attribute>
<name>region_name</name>
<type>String</type>
<null_value></null_value>
</attribute>
</structure>
</dictionary>