#1 Thu 19 July 2007 11:15
- mathildeharel
- Participant occasionnel
- Date d'inscription: 4 Nov 2005
- Messages: 17
renommer nom colonnes suite à requête SQL
Bonjour à tous,
J'ai chercher dans le forum mais je n'ai rien trouvé à ce sujet...
Je fais une requête SQL avec une colonne en "count" et une autre en "sum". Je souhaite modifier ces noms de colonnes barbares qui apparaissent afin d'intégrer ma table "données" compréhensible dans la mise en page.
Merci d'avance pour vos réponses.
Hors ligne
#2 Thu 19 July 2007 11:20
Re: renommer nom colonnes suite à requête SQL
Avec ceci par exemple ?
Alter Table "NomdeMaTable" ( rename Nomdecolonnebarbare NomdeColonneComprehensible )
EDIT : j'oubliais, c'est a taper dans la fenêtre Mapbasic qui est dispo là : "Menu Affichage/Afficher la fenêtre Mapbasic"
Hors ligne
#3 Thu 19 July 2007 12:29
- mathildeharel
- Participant occasionnel
- Date d'inscription: 4 Nov 2005
- Messages: 17
Re: renommer nom colonnes suite à requête SQL
Je ne suis pas très douée en prog, d'autant plus que je n'ai pas MB. Mais j'ai tenté avec la fenêtre MB Alter query2 (rename count NB), et message d'erreur "erreur de syntaxe:query2"...
Je pensais plus à une manip dans la fenêtre "sélection SQL"...
Merci de votre réponse
Hors ligne
#4 Thu 19 July 2007 12:41
Re: renommer nom colonnes suite à requête SQL
Hello,
Ah oui, je comprend mieux. A priori la table n'existe pas "en dur" si on la sauvegarde pas, d'où l'erreur.
Pour la création de colonne Count(*) sous un nom différent, je sèche via la boîte de dialogue Selection SQL, mais il y a peut être un moyen (?).
Juste un petit complément : ce que j'ai mis comme code n'est pas de la programmation à proprement parler, pas d'inquiétude, c'est accessible, pas besoin de MB en plus.
Par exemple, il suffit d'ouvrir la fenêtre MB quand on bosse pour voir l'équivalent de toutes les commandes que l'on passe à Mapinfo via les boîte de dialogue inscrite dans la fenêtre. Il est ainsi possible de faire des macro, des scripts des choses du genre par forcément toujours très élaboré.
Exemple équivalent à la fenêtre de sélection SQL :
Code:
Select Count(*) from MaTable where Superficie > 10 group by ID into MaSelection
L'intêret est de réexploiter cette ligne pour l'inclure dans un script par exemple Pour lancer le script il suffit de coller cette ligne dans la FMB, selectionner et taper entrée pour relancer la même procédure.
Désolé de pas pouvoir aider sur ce coup, mais il y a surement un truc très simple qui m'a échappé
Robin.
Hors ligne
#5 Thu 19 July 2007 12:49
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: renommer nom colonnes suite à requête SQL
Bonjour
Le truc simple c'est de nommer tout de suite la colonne dans la requête
Pour reprendre l'exemple de Robin ça donnerait (si on veut donner le nom "machin")
Code:
Select Count(*) "machin" from MaTable where Superficie > 10 group by ID into MaSelection
Après, le renommage n'est plus possible, sauf à enregistrer en dur la table obtenue et à passer alors par Table->Modifier structure
Hors ligne
#6 Thu 19 July 2007 14:51
- FloDumont
- Participant occasionnel
- Lieu: Bamako
- Date d'inscription: 2 Apr 2007
- Messages: 34
Re: renommer nom colonnes suite à requête SQL
Bonjour Mathilde,
Pour ne pas te tracasser avec la fenêtre MapBassic, lorsque tu effectues ta requête, juste à la suite de count(*) et de sum(...), il suffit d'indiquer entre guillements le nom du champ souhaité.
Par exemple : count(*) "NbreDeVillages"
Bonne journée. Bon courage.
Florence
Hors ligne
#7 Thu 19 July 2007 19:05
- mathildeharel
- Participant occasionnel
- Date d'inscription: 4 Nov 2005
- Messages: 17
Re: renommer nom colonnes suite à requête SQL
OK, pas de problème, c'est déjà sympa de vous être penché sur la question!
merci encore
[EDIT Maurice] Messages suivants regroupés
- de mathildeharel: Je me doutais un peu que c'était un truc simple (mais je ne parvenais pas à m'en souvenir!), et je confirme, ça marche!! Merci !
- de mathildeharel: OK, merci!
- de Maurice: Mathilde, tu as oublié "au revoir !"
- de mathildeharel: Au revoir!
Dernière modification par Maurice (Fri 20 July 2007 12:14)
Hors ligne
#8 Tue 20 November 2007 12:11
- FloDumont
- Participant occasionnel
- Lieu: Bamako
- Date d'inscription: 2 Apr 2007
- Messages: 34
Re: renommer nom colonnes suite à requête SQL
Bonjour à tous,
Je reviens sur cette question pour un complément d'aide.
J'avais répondu que pour avoir un nom correct de colonne, il fallait lorsque l'on effectue la requête SQL, juste à la suite de count(*) et de sum(...), indiquer entre guillements le nom de colonne souhaité.
Par exemple : count(*) "NbreDeVillages"
Cela fonctionne, en effet, très bien. Mon soucis aujourd'hui est que lorsque j'exporte la fenêtre contenant mon tableau de synthèse en .txt et qu'ensuite j'ouvre ce fichier sous excel, le "joli" nom de colonne reste pour sum(...) mais pas pour count(*) !
Quelq'un aurait-il une idée du pourquoi et comment y "remédier" ?
Merci à tous et bonne journée.
Florence
Hors ligne
#9 Tue 20 November 2007 12:58
- FloDumont
- Participant occasionnel
- Lieu: Bamako
- Date d'inscription: 2 Apr 2007
- Messages: 34
Re: renommer nom colonnes suite à requête SQL
Désolée de vous avoir dérangé !
J'ai trouvé la solution : le bon intitulé ne restait pas sous excel tout simplement parce que j'avais mis, lors de la requête SQL, des espaces entre les mots (mais il s'affichait bien dans le tableau de données MapInfo !).
Vraiment comme on dit ici, c'est trop mesquin !!!
Bonne journée à tous.
Hors ligne