[résolu] update avec group by
Bonjour,
je souhaiterai transformer la requete suivant en update :
T1 contient
hash varchar (20) clé primaire
hash_libelle varchar (50)
T2 :
ID : entier auto incrémenter, clé primaire
hash varchar (20), clé etrangère pour T1
hash_libelle varchar(50)
T1 contient tout les hash existant.
T2 contient l'historique de des libéllé des hashs.
Je souhaite renseigné dans t1.hash_libelle le plus ancien libéllé. Je le récupère via min(id).
Code:
1 2 3
| select t1.hash, min(t2.id), t2.hash_libelle
from tb_hash t1 join tb_hash_histo t2 using (hash)
group by t2.hash |
Cette requete fonctionne et j'aimerai la transformé en update sans sous requete, j'ai mysql 4.0.16 et je ne peux pas upgrader en 4.1.
j'ai tenté ce code mais j'ai une erreur
Code:
1 2 3 4 5
|
update tb_hash t1 join tb_hash_histo t2 using (hash)
set t1.hash_libelle = t2.hash_libelle
group by t2.hash
having id = min(id) |