Pages: 1
- Sujet précédent - QGIS 3.40: Incrementer un champ texte en fonction d un autre champ - Sujet suivant
#1 Thu 30 October 2025 17:02
- ckiko13
- Participant assidu
- Date d'inscription: 20 Feb 2007
- Messages: 369
QGIS 3.40: Incrementer un champ texte en fonction d un autre champ
Bonjour
J'ai une couche de points avec 2 champs:
- rue
- id_rue
Ma table ressemblerait à ceci:
RUE RUE_ID
rueA rueA_1
rueA rueA_2
rueB rueB_1
rueC rueC_1
rueC rueC_2
rueC rueC_3
rueC rueC_4
Lorsque j'ajoute un nouveau point par exemple dans la rueA, j'aimerais lorsque je remplis le champs RUE, que le champ RUE_ID prenne la suite de la 'numérotation', ici: rueA_3.
J'ai regardé du côté des fonctions ARRAY_LAST, mais je ne débouche sur rien.
Auriez-vous des pistes à me proposer?
Merci
Hors ligne
#2 Tue 04 November 2025 16:13
- ckiko13
- Participant assidu
- Date d'inscription: 20 Feb 2007
- Messages: 369
Re: QGIS 3.40: Incrementer un champ texte en fonction d un autre champ
Bonjour
J'ai trouvé 2 solutions:
1] La toolbox et l'outil AGREGATION en mettant comme fonction d'agrégation LAST_VALUE, dans le champ dont je veux connaître le dernier identifiant.
2] La création d'une couche virtuelle avec ce script:
Code:
SELECT
<champ_rue>,
MAX(CAST(REGEXP_SUBSTR(<champ_code>, '[0-9]+') AS INTEGER)) AS max_num
FROM
<ma_couche>
GROUP BY
<champ_rue>;L'avantage de la couche virtuelle est qu'elle met à jour automatiquement le champ_code, donc ça me permet de le connaître; à défaut de pouvoir l'implémenter directement dans la couche source.
Dernière modification par ckiko13 (Tue 04 November 2025 16:28)
Hors ligne
Pages: 1
- Sujet précédent - QGIS 3.40: Incrementer un champ texte en fonction d un autre champ - Sujet suivant


