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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  requête originale.. mais est ce faisable ?

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

requête originale.. mais est ce faisable ?

n°1162427
matthieu_p​hpmv
Posté le 28-07-2005 à 00:42:27  profilanswer
 

Salut
je continue ma série de questions peut être étranges sur des requêtes.
 
En simplifiant mon problème, ça donne ça :
 
Problème
J'ai une table T qui contient 2 id
id1
id2
 
Je voudrais avoir pour chaque id2 différent, le nombre de fois où il a été associée pour la première fois à un id1
 
Exemple
(id1,id2)
(1,3)
(2,2)
(2,4)
(1,2)
(2,3)
(3,3)
 
Résultat
ce qui donne, pour chaque id2 différent  
 
3 a été 2 fois le premier id2 associé à un id1
2 a été 1 fois le premier id2 associé à un id1
4 a été 0 fois le premier id2 associé à un id1
 
Précisions/Contrainte
- il y a 2 tables qui sont en relation avec id1 et id2, la table T étant une table de liaison entre les 2 autres (cela peut peut être aider ?)
- la table dispose d'un id0 auto_increment qui peux aider peut être
- 1 requete sans sous requete, sinon c'est moins fun ;-)
 
 
Je ne vois pas du tout comment faire. J'y ai réfléchi pourtant, mais non... ! :-(
 
 
Merci d'avance


Message édité par matthieu_phpmv le 28-07-2005 à 00:53:41
mood
Publicité
Posté le 28-07-2005 à 00:42:27  profilanswer
 

n°1162477
Arjuna
Aircraft Ident.: F-MBSD
Posté le 28-07-2005 à 01:56:01  profilanswer
 

Tu veux ça, mais en une seule requête, c'est bien ça ?
 
Bon courrage :D (mais c'est peut-être faisable qui sait ?)
 

Code :
  1. select Cast(t3.id2 as varchar) + ' a été ' + Cast(count(distinct t1.id1) as varchar) + ' fois le premier id2 a être associé à un id1'
  2. from test t3, test t1
  3. where not exists (select null from test t2 where t2.id2 <> t1.id2 and t2.id1 = t1.id1 and t1.id0 > t2.id0)
  4. and t3.id2 *= t1.id2
  5. group by t3.id2
  6. order by count(distinct t1.id1) desc


 

Code :
  1. 3 a été 2 fois le premier id2 a être associé à un id1
  2. 2 a été 1 fois le premier id2 a être associé à un id1
  3. 4 a été 0 fois le premier id2 a être associé à un id1

n°1162481
matthieu_p​hpmv
Posté le 28-07-2005 à 02:03:25  profilanswer
 

bon bravo :)
même avec une sous requête c'est bien chaud comme tu le montres !
 
Je ne pense pas que ce soit possible en une même requête, mais qui sait.
 
Je vais y réfléchir demain, quand j'aurai tous mes moyens.


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

  requête originale.. mais est ce faisable ?

 

Sujets relatifs
Récuperer le résultat d'une requête sql[RESOLU] [MySQL] Requête avec conditions
Requete SQL qui s'additionnent !pb requete avec order by
Requete sur deux tables[résolu] Problème de requête, CPU à 100%...
[SQL] Problème écriture requêterequete hiberntate : comment ca marche ?
réalisation d'un bot: automatisation d'une requêteProblème de requete sql..nécessité d'une requete récursive??
Plus de sujets relatifs à : requête originale.. mais est ce faisable ?


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