Défi requète

Fermé
Utilisateur anonyme - 6 oct. 2007 à 17:28
 samlhau - 8 oct. 2007 à 10:43
Bonjour,
je lanfce un micro défi à tous ce qui aime ce casser la tête sur les requête sql et leur traitement en php.
J'ai trois tables, la première répertore tous les membres du site member( id et pseudo), la deuxième les changement de psedo change_name( id du changement, old_name et op_id pour l'identifiant de l'opération), la troisième répertorie les opération op (op_id , member_id et date).
je veux savoir pour un pseudo donnée ( par une recherche) qui l'a eu et quel pseudo il avait avant ou aprés.

A l'heure actuelle j'a iune requète qui ne tien pas compte de la table member, toutes les réponses sont les bienvenue d'une refonte de tables à un gros traitement PHP sachant que je ne cherche pas forcemment le plus simple mais le plus léger pour le serveur.

Merci

4 réponses

juvenalvangu Messages postés 7 Date d'inscription samedi 6 octobre 2007 Statut Membre Dernière intervention 16 mars 2013 1
6 oct. 2007 à 17:39
Soi plus explicite, on comprend mal ce ke tu cherche à dire
0
vignemail1 Messages postés 1246 Date d'inscription vendredi 8 octobre 2004 Statut Contributeur Dernière intervention 13 septembre 2019 259
6 oct. 2007 à 18:22
Si j'ai bien compris ton fonctionnement, tu peux essayer un truc du genre :

SELECT c.oldname as old FROM member as m,change_name as c,op WHERE m.pseudo="user" AND c.op_id=op.op_id AND op.member_id=m.id;

où user est le pseudo que tu recherche et old le champ "virtuel" contenant les anciens old_name associé à un pseudo.
Si tu veux faire une regex pour le nom, il faut changer m.pseudo="user" par m.pseudo REGEXP "user".
0
Utilisateur anonyme
7 oct. 2007 à 18:38
en fait ta requête me donne l'ancien pseudo de celui qui s'apelle aujourd'hui 'user'.

Moi je cherche a récupérer tous les membres qui a un moment se sont appelé 'user' et quel pseudo ils avait juste avant celui ci et juste aprés.
sachant qu'à un moment donner un seul membre à un pseudo.

A la rigueur la personne qui a le pseudo en ce moment on peut l'ignorer.

Est-ce plus clair?
0
vignemail qu'est-ce que tu appelle 'le champ "virtuel" contenant les anciens old_name associé à un pseudo'.
Parce que c'est un peu ça m'ont problème.
0