Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2955 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  SELECT * sauf une colonne : possible ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

SELECT * sauf une colonne : possible ?

n°1597774
drkarma
Old boy
Posté le 09-08-2007 à 16:15:55  profilanswer
 

Bonjour,
 
question simple :
 
j'ai une table avec 100 colonnes et je voudrais éviter de taper 99 noms de champ apres SELECT,
est il possible avec une bidouille de faire un SELECT * SAUF [colonnes a exclure] ?
 
Merci. :jap:  
 
 
ps:  
je SAIS que c'est contraire a la norme SQL.
je SAIS que je devrais taper les noms des 99 champs.
je SAIS que Select * c'est mal.
donc merci d'éviter de répondre ceci. J'ai mes raisons. :)

mood
Publicité
Posté le 09-08-2007 à 16:15:55  profilanswer
 

n°1597779
e-deby
Posté le 09-08-2007 à 16:17:36  profilanswer
 

sous MySQL, de mémoire non...

n°1597790
drkarma
Old boy
Posté le 09-08-2007 à 16:25:55  profilanswer
 

et SQL tout court ? :)

n°1597794
e-deby
Posté le 09-08-2007 à 16:26:33  profilanswer
 

drkarma a écrit :

Bonjour,
 
question simple :
 
j'ai une table avec 100 colonnes et je voudrais éviter de taper 99 noms de champ apres SELECT,
est il possible avec une bidouille de faire un SELECT * SAUF [colonnes a exclure] ?
 
Merci. :jap:  
 
 
ps:
je SAIS que c'est contraire a la norme SQL.
je SAIS que je devrais taper les noms des 99 champs.
je SAIS que Select * c'est mal.
donc merci d'éviter de répondre ceci. J'ai mes raisons. :)


...

n°1597800
casimimir
Posté le 09-08-2007 à 16:30:48  profilanswer
 

si tu as un outil tiers oui, genre toad le fait, sinon non

n°1598279
MagicBuzz
Posté le 10-08-2007 à 16:12:48  profilanswer
 

select *
=> copie du résultat dans excel
=> virer la colonne en trop
 
[:magicbuzz]
 
select * signifie que tu fais des tests ou du oneshot. donc passer par excel ou autre soft tiers comme propose casimimir convient parfaitement.
 
si ça ne te convient pas, alors tape les 99 colonnes, parceque non seulement y'a pas d'autre solutions, mais surtout c'est le mal

n°1598310
jeca
Posté le 10-08-2007 à 16:36:16  profilanswer
 

Tu complètes le nom du champ à exclure et le nom de la table, et tu exécutes ce code.
Il te retourneras une chaînes avec la liste des colonnes séparées par une virgule.
 

Code :
  1. $colonneEclue = 'leNomDeLaColonneExclue';
  2.   $sql = 'describe laTable';
  3.   $result = mysql_query($sql, $connexion);
  4.   $nomCol = '';
  5.   $i = 0;
  6.   while ($item = mysql_fetch_object($result))
  7.   {
  8.     if ($item -> Field != $colonneEclue)
  9.     {
  10.       $nomCol[$i] = $item -> Field;
  11.       $i ++;
  12.     }
  13.   }
  14.   $lesColonnes = implode(', ', $nomCol);

n°1599083
drkarma
Old boy
Posté le 13-08-2007 à 16:50:08  profilanswer
 

merci

n°1600827
Noren2
Posté le 19-08-2007 à 18:49:18  profilanswer
 

Salut,  
 
Si tu es sous toad : F4 sur le nom de la table, tu selectionnes tes colonnes et tu le colles dans ton select.
 
Si tu es sous sqlplus :
> SPOOL toto.sql
> desc matable;
> SPOOL OFF
 
Tu recuperes le contenu du fichier toto.sql, tu l'edites en mode colonne avec un editeur de texte en supprimant ta colonne et en mettant des virgules, et tu met tout ca dans ton select.
 
+


Message édité par Noren2 le 19-08-2007 à 18:49:33

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  SELECT * sauf une colonne : possible ?

 

Sujets relatifs
Impossible de voir le texte d'un "select"[MySQL] SELECT avec LEFT JOIN et LIMIT
activate, selectLien dynamique avec SELECT
Excel macro pour appliquer fonction sur une colonne[résolu] récupérer 2 variables dans <option> du <select>
Javascript : select dynamique et encodageCréation dynamique de frame, c'est possible ?
swapimage sur zone reactive.. possible?[SQL 2005] Problème pour une requête SELECT
Plus de sujets relatifs à : SELECT * sauf une colonne : possible ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR