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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [MySQL] UNION spéciale :)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[MySQL] UNION spéciale :)

n°1445816
zecoke
Posté le 21-09-2006 à 15:28:55  profilanswer
 

Bonjour,
 
Je voudrais faire une UNION entre 2 tables mais un peu spéciale, je m'explique :
 
SELECT id,champ1 FROM table1 WHERE condition=1  
UNION
SELECT id,champ2 FROM table2 WHERE condition=2
 
Mais en plus de cela, avoir un GROUP BY id (qui permettrait de compter les répétitions) ORDER BY champ1
 
Pour avoir au final :
count(id) | champ1
1 | blabla
1 | bloblo
5 | blibli
2 | bleble
 
Est-ce que ca se fait ?
Merci !


Message édité par zecoke le 21-09-2006 à 15:29:56
mood
Publicité
Posté le 21-09-2006 à 15:28:55  profilanswer
 

n°1445818
MagicBuzz
Posté le 21-09-2006 à 15:30:33  profilanswer
 

select ...
from (
  select ... from ...
  union
  select ... from ...
)
group by ...
order by ...
 
d'autres questions ? :)

n°1445827
zecoke
Posté le 21-09-2006 à 15:37:30  profilanswer
 

Bah là :
 
SELECT id, tag
FROM (
SELECT count( id ) , tag FROM tags
UNION SELECT count( id_membre ) , style FROM membres
)
GROUP BY id
ORDER BY tag
 
Ca marche pas  :heink:

n°1445848
MagicBuzz
Posté le 21-09-2006 à 15:54:32  profilanswer
 

poste au moins ton essage d'erreur, on n'est pas devins
 
d'ailleurs le "count(id)" si tu le renomme pas, mysql sais pas d'où tu cherche le "id" dans le selected externe.
idem pour le tag, d'autant qu'il s'appelle deux fois différement.


Message édité par MagicBuzz le 21-09-2006 à 15:54:47
n°1445875
zecoke
Posté le 21-09-2006 à 16:31:53  profilanswer
 

Ouép j'avais oublié de poster l'erreur  :o  
 
SELECT nb, tag
FROM (
SELECT count( id ) as nb , tag FROM tags
UNION SELECT count( id_membre ) as nb , style FROM membres
)
GROUP BY nb
ORDER BY tag  
 
#1248 - Every derived table must have its own alias
 
Toujours la même erreur avec ou sans les "AS"

n°1445900
Beegee
Posté le 21-09-2006 à 16:53:26  profilanswer
 

SELECT nb, tag
FROM (
SELECT count( id ) as nb, tag FROM tags
UNION SELECT count( id_membre ) as nb, style as tag FROM membres
)
GROUP BY nb
ORDER BY tag

n°1445905
zecoke
Posté le 21-09-2006 à 16:57:12  profilanswer
 

Non plus, et même erreur...

n°1445908
MagicBuzz
Posté le 21-09-2006 à 16:59:39  profilanswer
 

après la ) met "as tmp"

n°1445909
MagicBuzz
Posté le 21-09-2006 à 16:59:50  profilanswer
 

avant le group by je veux dire

n°1445911
MagicBuzz
Posté le 21-09-2006 à 17:00:42  profilanswer
 

ps : et un message d'erreur, c'est pas :
1/ fait pour être ignoré
2/ pour être copier/collé sans chercher à comprendre
 
le message est hyper explicite.
et le numéro d'erreur est documenté dans la doc officielle, avec des exemple en plus


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

  [MySQL] UNION spéciale :)

 

Sujets relatifs
Classe simple pour mysql : questions ![MySQL] Taille de Blob
[PHP /Mysql] Internal Server Error dans les parties administrationTable mysql pour un album photo
Question sur les types de données de MySQL[MySQL] Question rapide sur efficacité d'une requête
[MySQL/PHP] Impossible de renommer un fichier proposé en download[MySQL/PHP] Petit soucis de renommage de fichiers proposés en download
hostname mysql sous easyphp 
Plus de sujets relatifs à : [MySQL] UNION spéciale :)


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