Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
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 Mon 25 May 2009 13:10

JSG
Juste Inscrit !
Date d'inscription: 9 Jan 2009
Messages: 7

Requête - Opérateur "If"?

Bonjour,

je cherche à mettre à jour une colonne "pente" en fonction de la valeur d'une autre colonne. Pour être plus clair :
dans ma table, j'ai deux colonnes : "Lower" et "Upper". j'ai rajouté un champs appelé "Pente".

Je souhaite que mes éléments dont "Lower"="-0.181969" aient leur colonne "Pente"="faible" puis répéter cette opération avec "Lower"="0.9419" -> "Pente"="modérée" etc...

j'ai pensé à deux méthodes :


1]

je cherche d'abord à selectionner les lignes où "Lower"="-0.181969" puis mettre à jour la colonne "Pente"="faible" pour les éléments selctionnés

Lorsque je fais ma selection, une fenêtre : "Aucun enregistrement n'est selectionné" apparait.
1)Est-ce du au fait que ma table est celle d'un "contour" crée d'après un Grid sous VM?
2) dans ce cas, dois-je faire une manip particulière pour pouvoir faire une selection ?

J'ai essayé une deuxième méthode :


2]

Utiliser un opérateur du type If

mettre à jour ma colonne pente en utilisant une fonction telle SI ou IF de la manière suivante : If("Lower"="-0.181969");"Pente"="faible"   j'ai essayé avec parenthèses, sans parenthèses en inversant le sens de la requête etc... 
1) est-ce que l'opérateur "If" existe-t-il et si oui est-ce la bon usage?
2) sinon, quel opérateur dois-je utiliser et avec quel synthaxe?



J'ai crée un nouveau sujet car après une longue recherche sur le forum, je n'ai toujours pas trouvé de réponse....

Précision, j'utilise MapInfo 7.0


Merci d'avance pour votre aide

JS

Hors ligne

 

#2 Mon 25 May 2009 13:25

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Requête - Opérateur "If"?

Bonjour
Seule la première méthode est valide: sélection puis mise à jour de la sélection (attention à ça !!)
Pas de If... dans le SQL
Quelle est la nature du champ "Lower" ?? ce que vous écrivez présume que c'est du texte (guillemets)
Pour du numérique, la condition est Lower = -0.181969 ...

Hors ligne

 

#3 Mon 25 May 2009 13:45

JSG
Juste Inscrit !
Date d'inscription: 9 Jan 2009
Messages: 7

Re: Requête - Opérateur "If"?

Autant pour moi pour le If. Peut-être que j'ai vu cette opérateur sous ArcGis ou alors je me trompe totalement... wink
Le champs "Lower" est un flottant

j'ai réussi ma selection selection sans les guillemets et, comme vous l'avez écrit, en mettant un point à ma valeur plutôt qu'une virgule. Tout de suite ca marche mieux. Merci

Savez-vous si sur le site il y a un onglet ou un poste regroupant les formules des requêtes les plus utilisées?

petit souci supplémentaire...
une fois ma selection faite, je me demande qu elle manip je dois faire :
enregistrer la selection ou mettre a jour ma colonne pente depuis ma table de base à partir de la table de la selection obtenue?

comme vous l avez compris je ne suis pas un crac de MI

Merci encore

Hors ligne

 

#4 Mon 25 May 2009 13:55

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: Requête - Opérateur "If"?

JSG a écrit:

... mettre a jour ma colonne pente de ma table de base à partir de la table selection obtenue?...


La solution est là smile
Cette sélection se nommera "selection" si vous n'y "touchez" pas, sinon queryN...ou alors bidule si vous avez décidé de l'appeler ainsi (item "résultat dans table:" du requêteur)

Pour le reste...lire les "documents spécifiques" (surtout la partie 1) ici...

Hors ligne

 

#5 Mon 25 May 2009 14:05

JSG
Juste Inscrit !
Date d'inscription: 9 Jan 2009
Messages: 7

Re: Requête - Opérateur "If"?

J'ai réussi à obtenir ce que je voulais. Merci pour votre aide et pour le lien.

Cordialement

Hors ligne

 

Pied de page des forums

Powered by FluxBB