#1 Fri 18 July 2008 15:42
- Daniel
- Membre
- Lieu: Victoriaville, Québec
- Date d'inscription: 6 Sep 2005
- Messages: 2028
Sélection à partir d'une fonction
Bonjour
J'ai une table d'annotation. Dans une des colonnes de la base de données, il y a la même valeur que l'annotation (par exemple, l'annotation rue Bordeau a dans sa base de données, rue Bordeau). Le type de cette colonne est caractère. On y retrouve des chiffres et des lettres. Les chiffres correspondent à des mesure sur le terrain (dimension de chaque côté d'un lot). Donc, je n'ai jamais le même chiffre. J'aimerais extraire seulement ce qui est alphanumérique(rue Bordeau). Les chiffres sont inutiles, dans ce cas. Je regardais la fonction VAL mais je ne suis pas certain que ça fonctionne.
Quelqu'un aurait une piste de solution?
Daniel
De retour à la géomatique
Hors ligne
#2 Fri 18 July 2008 18:28
- Maestro de la salsa
- Participant actif
- Date d'inscription: 7 Jun 2006
- Messages: 133
Re: Sélection à partir d'une fonction
Bonjour,
Alphanumérique? (19rue Bordeau est alphanumérique...). Voulez-vous extraire uniquement les textes?
19rue Bordeau--> rue Bordeau???
Ou rue Bordeau sur une ligne et 19 sur une autre ligne de la même colonne???
Dans l'aide j'ai trouvé ça:
char_expr Val(char_expr)
12 000 12
52 - 62 Brunswick 52
Dix-huit 0
Box 239 0
Alain
Hors ligne
#3 Fri 18 July 2008 19:03
- Daniel
- Membre
- Lieu: Victoriaville, Québec
- Date d'inscription: 6 Sep 2005
- Messages: 2028
Re: Sélection à partir d'une fonction
Bonjour
Voici ce que j'ai dans ma colonne:
38,56
30,85
Rue Bordeau
Rue Plante
55,89
etc...
Je veux donc avoir les éléments qui ont seulement du texte
i.e.
Rue Bordeau
Rue Plante
Daniel
De retour à la géomatique
Hors ligne
#4 Fri 18 July 2008 20:30
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Sélection à partir d'une fonction
Bonjour Daniel
C'est val() qui va... Il sera égal à zéro partout où il n'y a que du texte
La sélection des enregistrements où val() est non nul peut donc être mise à jour en ""
Hors ligne
#5 Mon 21 July 2008 15:22
- Daniel
- Membre
- Lieu: Victoriaville, Québec
- Date d'inscription: 6 Sep 2005
- Messages: 2028
Re: Sélection à partir d'une fonction
Bonjour
Je sais que Maurice est en vacance mais là, je mis perd avec la fonction Val(). J'ai bien lu dans le manuel de référencemais je ne comprend pas comment utiliser cette commande. Dans ma base de données, ma colonne est définie comme caractère. Dans le manuel, il précise que la colonne doit-être flottante! Est-ce que j'utilise cette fonction dans une sélection ou dans une mise à jour?
Merci pour les explications
Daniel
De retour à la géomatique
Hors ligne
#6 Mon 21 July 2008 16:05
- nicoboud
- Membre
- Lieu: Nantes
- Date d'inscription: 12 Oct 2007
- Messages: 860
Re: Sélection à partir d'une fonction
Bonjour,
A ma connaissance, la fonction val est bien une fonction pour chaînes de caractères.
par exemple le code suivant :
select * from ma_table where val(annotation)=0
va sélectionner tous les enregistrements dont l'attribut "annotation" ne contient pas de nombre au début des chaînes de caractères.
Si cette chaîne de caractère commence par des lettres , la fonction val renverra la valeur 0 même si cette chaîne de caractère contient des nombres (mais non placés en début de chaîne).
Une solution pour ne sélectionner strictement que les champs ne contenant pas de nombre quelque soient leur position :
select * from ma_table where annotation<>all(annotation like "%9%",annotation like "%8%",annotation like "%7%",annotation like "%6%",annotation like "%5%",annotation like "%4%",annotation like "%3%",annotation like "%2%",annotation like "%1%",annotation like "%0%")
...ça fait usine à gaz mais ça fonctionne !! il y a peut-être beaucoup plus simple...
Nicolas.
Co-modérateur du forum Mapinfo
Utilisateur Mapinfo et QGIS
Hors ligne