#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 !
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