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é ?

#1 Wed 18 March 2009 18:23

Cherubin
Participant assidu
Lieu: NGC 1300
Date d'inscription: 10 Jun 2008
Messages: 273

Requêtes SQL pour remplir un champ

Bonjour

J'ai une couche shape qui a dans sa table une colonne avec des données du style N21 ou A62. Je cherche à avoir une colonne dans ma table avec seulement la lettre. J'aimerais donc utiliser une commande SQL pour extraire la lettre, mais où l'écrire cette cmd?? La fonction Sélectionner selon les attributs me permet d'identifier, mais pas d'écrire. À moins que je me trompe?

Merci

Hors ligne

 

#2 Wed 18 March 2009 20:37

carteq
Participant assidu
Date d'inscription: 8 Mar 2008
Messages: 829

Re: Requêtes SQL pour remplir un champ

Tu peux utiliser Calculate Field sur un nouveau champ et l'instruction VBA : Left(tonChampCible, 1)

Cela retourne la première lettre de ton champ cible.

Hors ligne

 

#3 Wed 18 March 2009 20:47

Nadine Polombo
Participant occasionnel
Date d'inscription: 4 Oct 2006
Messages: 33

Re: Requêtes SQL pour remplir un champ

Bonsoir

Une solution possible :
Une fois la couche chargée  dans ArcMap (ici 9.1 SP3), ouvrir la table attributaire et créer une nouvelle colonne avec le bouton "Options/Ajouter un champ". Donner le nom et spécifier le type de variable.
Puis clic-droit sur le nouveau champ, et " Calculer des valeurs".
L'interface "Calculatrice de valeurs de champs" apparait.
On peut soit donner directement une expression, soit cocher la case "avancé" pour écrire en VBA. Le bouton Aide propose des exemples d'expression et de code, entre autres :

"L'expression de calcul suivante fait appel à la fonction LEFT ( ) sur un champ de chaîne pour renvoyer les trois caractères les plus à gauche de la chaîne dans un champ de texte appelé CODE :
LEFT ([CODE],3)"


Si vous avez sélectionné dans ArcMap les entités que vous voulez traiter, et cliqué sur "Sélection" dans la table attributaire, seuls les enregistrements sélectionnés auront la valeur calculée dans le nouveau champ.

La même chose peut  être réalisée directement dans une géodatabase , sans passer par ArcMap, par une requête.

Nadine

Hors ligne

 

#4 Wed 18 March 2009 20:51

Nadine Polombo
Participant occasionnel
Date d'inscription: 4 Oct 2006
Messages: 33

Re: Requêtes SQL pour remplir un champ

Bonsoir Carteq

C'est amusant, nous avons répondu ensemble ; et en comparant, j'ai l'impression que je parle trop ! wink

Bien cordialement

Hors ligne

 

#5 Wed 18 March 2009 23:45

carteq
Participant assidu
Date d'inscription: 8 Mar 2008
Messages: 829

Re: Requêtes SQL pour remplir un champ

Ta réponse est plus complète, ce qui n'est pas mauvais,  mais j'ai sauvé 10 minutes...

Salutations

Hors ligne

 

#6 Thu 19 March 2009 09:39

Cherubin
Participant assidu
Lieu: NGC 1300
Date d'inscription: 10 Jun 2008
Messages: 273

Re: Requêtes SQL pour remplir un champ

Yé sa fonctionne!!!
Mais je n'ai pas été obligé de passé en mode avancé.
Merci beaucoup vos réponses !!!!

Hors ligne

 

Pied de page des forums

Powered by FluxBB