#1 Tue 15 April 2014 11:30
- mathkoniecz
- Participant occasionnel
- Date d'inscription: 26 Apr 2012
- Messages: 11
ajouter 2 tables avec une requête
Bonjour,
Je souhaiterais pouvoir ajouter une table à une autre à l'aide d'une requête afin de pouvoir lier les mises à jours (sinon j'aurais utilisé l'outil "ajouter une table à une autre").
Merci d'avance pour votre aide.
Hors ligne
#2 Tue 15 April 2014 11:34
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: ajouter 2 tables avec une requête
Salut,
Ces tables ont t'elles la même structure?
Si c'est le cas, avec la FMB (Fenêtre MapBasic)
Code:
Insert into Table1 select * from Table2
A+
Joël
Dernière modification par Spacejo (Tue 15 April 2014 12:46)
Hors ligne
#3 Tue 15 April 2014 17:37
- cec_92
- Participant assidu
- Date d'inscription: 28 Feb 2008
- Messages: 193
Re: ajouter 2 tables avec une requête
Bonjour,
Pouvez-vous préciser exactement ce que vous souhaitez faire:
- ajouter des enregistrements (lignes) d'une table à une autre
ou
- ajouter des champs (colonnes) d'une table à une autre
Céc_92.
Hors ligne
#4 Wed 16 April 2014 09:52
- mathkoniecz
- Participant occasionnel
- Date d'inscription: 26 Apr 2012
- Messages: 11
Re: ajouter 2 tables avec une requête
Super! Merci Joël. C'est exactement ce qu'il me fallait.
J'aurai peut-être (plus tard) besoin d'ajouter des champs au résultat de la requête mais ça, c'est une autre histoire...
Cec_92 : j'avais besoin d'ajouter des lignes. Maintenant, si tu as une solution pour faire les deux, je suis preneuse :-)
Merci encore pour l'aide apportée.
Bonne journée
Hors ligne
#5 Wed 16 April 2014 10:19
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: ajouter 2 tables avec une requête
- ajouter des enregistrements (lignes) d'une table à une autre
Rien ne t'empêche dans ta requête de faire comme ceci -> avec une sélection attributaire:
Code:
Insert into Table1 select * from Table2 where Champblablabla = blablabla
ou encore en passant par la FMB:
Code:
select * from table2 where champblablabla = blablabla into Atransferer insert into Table1 select * from Atransferer
ou avec une sélection manuelle sur la table2:
Code:
Insert into Table1 select * from Selection
A+
Joël
Dernière modification par Spacejo (Wed 16 April 2014 10:21)
Hors ligne
#6 Wed 16 April 2014 12:27
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: ajouter 2 tables avec une requête
Complément d'infos
Les requêtes citées ci dessus sont pour des tables ayant la même structure.
Maintenant pour:
- ajouter des champs (colonnes) d'une table à une autre
Code:
INSERT INTO table_destination (liste_colonnes) SELECT liste_colonnes FROM table_origine
Voir Post #10 dans:
http://www.forumsig.org/showthread.php/ … ne-table-A
A+
Joël
Dernière modification par Spacejo (Wed 16 April 2014 12:59)
Hors ligne
#7 Wed 16 April 2014 12:42
- mathkoniecz
- Participant occasionnel
- Date d'inscription: 26 Apr 2012
- Messages: 11
Re: ajouter 2 tables avec une requête
Trop fort! :-)
Il va vraiment falloir que je suive une formation sur le langage Basic...
Je vais pousser le bouchon mais si on veut ajouter des champs au résultat de la requête sans qu'elles n'existent au préalable, il y a une solution?
Merci encore en tout cas.
Hors ligne
#8 Wed 16 April 2014 12:44
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: ajouter 2 tables avec une requête
Je vais pousser le bouchon mais si on veut ajouter des champs au résultat de la requête sans qu'elles n'existent au préalable, il y a une solution?
Peux tu développer car là je ne vois pas
Hors ligne
#9 Wed 16 April 2014 12:55
- mathkoniecz
- Participant occasionnel
- Date d'inscription: 26 Apr 2012
- Messages: 11
Re: ajouter 2 tables avec une requête
Je voudrais que, dans la table nouvellement créée grâce à la requête, je puisse ajouter des champs qui n'existaient pas dans les 2 tables utilisées pour la requête. C'est possible?
Hors ligne
#10 Wed 16 April 2014 13:07
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: ajouter 2 tables avec une requête
Avec la commande "Alter table" --> avec un "add column"
Voir dans MapBasicReferenceGuide: --> http://www.pbinsight.com/support/produc … o-mapbasic
Faire une recherche avec "Alter table"
--->
Code:
Alter Table table ( [ Add columnname columntype [, ...] ] [ Modify columnname columntype [, ...] ] [ Drop columnname [, ...] ] [ Rename oldcolumnname newcolumnname [, ...] ] [ Order columnname, columnname [,...] ] ) [ Interactive ]
Voilà les possibilités mais si tu veux uniquement ajouter des champs:
Code:
ALTER TABLE Ta_table ADD COLUMN ma_nouvelle_colonne1 ColonneType1, ma_nouvelle_colonne2 ColonneType2 etc....
A+
Joël
Dernière modification par Spacejo (Wed 16 April 2014 13:12)
Hors ligne
#11 Wed 16 April 2014 13:09
- mathkoniecz
- Participant occasionnel
- Date d'inscription: 26 Apr 2012
- Messages: 11
Re: ajouter 2 tables avec une requête
Merci infiniment. Je vais gagner un temps fou!
Hors ligne