banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Thu 30 October 2014 12:05

geobrie
Participant actif
Date d'inscription: 31 Jan 2010
Messages: 120

QGIS : Formater un nombre

Bonjour,

Je souhaites savoir si il est possible de formater un nombre pour un affichage d'étiquette. Je sais que Qgis possède plusieurs fonctions, comme "format_number",  qui vont dans ce sens mais je cale sur celle a utiliser.

Nombre utilisé : 12,2356

Format d'affichage : 12a 23er 56 ca

Merci

Hors ligne

 

#2 Thu 30 October 2014 13:07

Titius
Participant actif
Date d'inscription: 27 Aug 2013
Messages: 69

Re: QGIS : Formater un nombre

Bonjour,

Vous devriez plutôt regarder du côté des fonctions de chaînes de caractères, notamment, left(), right(), substr() et concat().

Dans votre cas, la formule SQL

concat(left('12,2356',2),'a ',substr('12,2356',4,2),'er ',right('12,2356',2),' ca')

renverra ce que vous souhaitez.
Bien entendu, il faudra remplacer '12,2356' par le nom de champ de votre attribut.

Il sera peut être aussi nécessaire d'utiliser la fonction tostring() pour transformer votre nombre réel en chaîne de caractère.
Dans ce cas, remplacez dans la formule '12,2356' par tostring("NOM_DE_CHAMP")

Hors ligne

 

#3 Thu 30 October 2014 14:03

geobrie
Participant actif
Date d'inscription: 31 Jan 2010
Messages: 120

Re: QGIS : Formater un nombre

Merci pour cette réponse, il me reste encore quelques bug à corrigé car le nombre n'a pas systématique deux nombre avant la virgule.

Hors ligne

 

#4 Thu 30 October 2014 14:20

Titius
Participant actif
Date d'inscription: 27 Aug 2013
Messages: 69

Re: QGIS : Formater un nombre

De rien,

Dans ce cas, il vous faut utiliser strpos() (il faut faire attention avec cette fonction car le premier caractère est numéroté 0)

dans votre cas, left('12,2356',2) devient left('12,2356',strpos('12,2356',','))

et substr('12,2356',4,2) devient substr('12,2356',strpos('12,2356',',')+2,2)

Hors ligne

 

#5 Wed 05 November 2014 10:00

geobrie
Participant actif
Date d'inscription: 31 Jan 2010
Messages: 120

Re: QGIS : Formater un nombre

Merci et désolé pour cette réponse tardive, je teste cette solution de suite

Dernière modification par geobrie (Wed 05 November 2014 10:00)

Hors ligne

 

Pied de page des forums

Powered by FluxBB