#1 Tue 17 December 2019 16:57
- geomou
- Participant actif
- Date d'inscription: 9 Apr 2012
- Messages: 82
QGIS: Conditons multiples
Je me permets de vous adresser ces questions car je suis un peu perdu :
1) Dans un table attributaire, j'ai créé un champ (champ 1) contenant un entier compris entre 1 et 5.
Dans un autre champ (champ 2), j'aimerais introduire une formule qui afficherait une valeur différente en fonction de la valeur du champ1.
J'ai déjà fait un truc du genre dans excel mais, apparemment, c'est un peu différent dans Qgis ;-)
2) Dans le même registre, peut-on afficher les étiquettes dans une couleur différente en fonction de la valeur du champ 1 ? Si champ1 = 1, alors l'étiquette s'affiche en rouge; si champ1=2, alors l'étiquette s'affiche en vert, ...
Merci par avance pour votre aide
Hors ligne
#2 Tue 17 December 2019 20:13
- Patrickblancseau
- Participant occasionnel
- Date d'inscription: 16 Jul 2019
- Messages: 45
Re: QGIS: Conditons multiples
bonjour
pour la question numero 1:
Code:
if( "colonne" =1, 'vrai','faux')
pour la 2 je ne sais pas
A+
Dernière modification par Patrickblancseau (Tue 17 December 2019 20:13)
Hors ligne
#3 Wed 18 December 2019 07:30
- GlaDal
- Participant assidu
- Date d'inscription: 30 Aug 2013
- Messages: 1085
Re: QGIS: Conditons multiples
Bonjour, tu peux aussi écrire :
CASE WHEN "Champ1"='1' THEN "Champ2"='orge' WHEN Champ1"='2' THEN "Champ2"='ble' et ainsi de suite
Hors ligne
#4 Wed 18 December 2019 09:13
- lchevrier
- Participant occasionnel
- Date d'inscription: 16 Feb 2018
- Messages: 41
Re: QGIS: Conditons multiples
Bonjour,
Pour ta seconde question tu peux facilement le faire depuis les propriétés de ta couche / menu étiquettes / étiquettes basées sur des règles.
Tu peux suivre le tuto vidéo suivant : https://vimeo.com/380190715
A +
Hors ligne
#5 Wed 18 December 2019 10:05
- geomou
- Participant actif
- Date d'inscription: 9 Apr 2012
- Messages: 82
Re: QGIS: Conditons multiples
Merci pour le tuto lchevrier...ça marche du tonnerre ;-)
Belle journée
Hors ligne
#6 Wed 18 December 2019 10:30
- geomou
- Participant actif
- Date d'inscription: 9 Apr 2012
- Messages: 82
Re: QGIS: Conditons multiples
GlaDal,
Merci pour ton aide mais ça ne marche pas :-(
La commande tapée est la suivante : CASE WHEN "Précision" = '1' THEN "Prec_full" ='Indéterminée' WHEN "Précision" ='2' THEN "Prec_full" ='Position approximative' WHEN "Précision" ='3' THEN "Prec_full" = 'Information déduite' WHEN "Précision" IS NULL THEN 'Rien' END
Quand il n'y a aucune info dans le champ Precision, il affiche 'rien' (Ca tombe bien, c'est ce qu'on lui demande ;-)) Par contre, dans tous les autres cas, il affiche 'NULL'. Aurais-je oublié quelque chose ?
Dans la calculatrice de champ, la commande CASE est formatée de la manière suivante : CASE WHEN condition THEN result END. Ce qui est bizarre, c'est que les éléments CASE, WHEN THEN, result et END apparaissent en gras dans l'aide. Je suppose qu'ils doivent tous apparaitre comme tels dans la ligne de commande.
Hors ligne
#7 Wed 18 December 2019 11:00
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3936
Re: QGIS: Conditons multiples
Bonjour,
La commande tapée est la suivante :
Code:
CASE WHEN "Précision" = '1' THEN "Prec_full" ='Indéterminée' WHEN "Précision" ='2' THEN "Prec_full" ='Position approximative' WHEN "Précision" ='3' THEN "Prec_full" = 'Information déduite' WHEN "Précision" IS NULL THEN 'Rien' END
Écrire une valeur du type 'xxx' revient à considérer que cette valeur est de type texte. Votre champ "Précision" n'est peut-être pas dans ce cas, par conséquent toutes les autres conditions ne sont pas rencontrées et comme QGIS n'a pas d'instruction à ce sujet, il renvoie NULL.
Dernière modification par SANTANNA (Wed 18 December 2019 11:00)
Hors ligne
#8 Wed 18 December 2019 12:28
- geomou
- Participant actif
- Date d'inscription: 9 Apr 2012
- Messages: 82
Re: QGIS: Conditons multiples
Voilà...j'ai recréé le champ précision en mode texte et il me calcule un truc bizarre : quand le champ 'precision' = 1 ou 5 , il renvoie la valeur 'NULL'. Par contre, quand le champ 'precision' = 2, 3 ou 4, il renvoie la valeur 0.
Hors ligne
#9 Wed 18 December 2019 12:36
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3936
Re: QGIS: Conditons multiples
Voilà...j'ai recréé le champ précision en mode texte
Ma suggestion, peut-être pas évidente, était d'enlever les apostrophes autour des valeurs numériques.
il me calcule un truc bizarre : quand le champ 'precision' = 1 ou 5 , il renvoie la valeur 'NULL'. Par contre, quand le champ 'precision' = 2, 3 ou 4, il renvoie la valeur 0.
Possibilité d'avoir un aperçu de la table attributaire et de l'expression utilisée?
Hors ligne
#10 Wed 18 December 2019 15:29
- geomou
- Participant actif
- Date d'inscription: 9 Apr 2012
- Messages: 82
Re: QGIS: Conditons multiples
Santanna,
Merci pour le temps que tu m'as consacré mais j'ai finalement trouvé la solution : En fait, après le Then, je réécrivais le nom du champ sur lequel était effectué le calcul.
Tout fonctionne nickel maintenant :-)
Belle fin de journée
Hors ligne