Commande SQL

Fermé
badside Messages postés 78 Date d'inscription vendredi 15 octobre 2004 Statut Membre Dernière intervention 16 mars 2012 - 9 mars 2007 à 14:39
badside Messages postés 78 Date d'inscription vendredi 15 octobre 2004 Statut Membre Dernière intervention 16 mars 2012 - 9 mars 2007 à 14:55
Bonjour à tous,

J'ai pu copier l'ensemble des lignes d'une table de base de données vers une autre table possédant les mêmes colonnes (nom, type, ...) mais auxquelles s'ajoutent deux colonnes placées avant toutes les autres. La commande utilisée est :

INSERT INTO TABLE2 SELECT DONNEE_COLONNE1, DONNEE_COLONNE2, * FROM TABLE1

où DONNEE_COLONNE1 et DONNEE_COLONNE2 sont des données qu'il faut mettre respectivement dans la première et deuxième colonne. Pour les autres colonnes de la table 2, c'est ce qu'il y a dans la table 1.

Maintenant, j'aimerais réaliser l'opération inverse : copier toutes les colonnes, excepté les deux premières, de la table2 vers la table 1 sachant que je dois effectuer cela sur un grand nombre de tables ayant toutes un nombre de colonnes différent et des noms de colonnes différents. Je ne peux donc pas faire un select sur le nom des colonnes.
Concrètement : Est-il possible de faire un select sur toutes les colonnes de la table 2 à l'exception des deux premières ? (quelque chose comme SELECT *NOT2 ... :-))

D'avance, merci pour vos réponses,
Badside.
A voir également:

2 réponses

lefoufighter Messages postés 277 Date d'inscription lundi 20 novembre 2006 Statut Membre Dernière intervention 12 avril 2018 99
9 mars 2007 à 14:49
Hello,
Il suffirait de remplacer ton * par le nom des colonnes dont tu as besoin : Exemple : table truc avec 4 colonnes col1,col2,col3,col4
Cela donnerait :
INSERT INTO TABLE1
SELECT col3, col4 FROM TABLE2 ;

et donc pas besoin de citer les colonnes dont tu n'as pas besoin !


0
badside Messages postés 78 Date d'inscription vendredi 15 octobre 2004 Statut Membre Dernière intervention 16 mars 2012 4
9 mars 2007 à 14:55
Le problème, c'est que je dois faire cela pour un grand nombre de tables ayant un nombre de colonnes important et des noms de colonnes différents. Je ne peux donc pas travailler sur les noms des colonnes. C'est pour cela que je comptais utiliser le fait que ce soient les deux premières colonnes qui ne doivent pas être copiées.
0