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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [SQL] count d'un count ??

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[SQL] count d'un count ??

n°1284774
BettaSplen​dens
Tout cul tendu mérite son dû
Posté le 16-01-2006 à 17:35:11  profilanswer
 

B'jour,
 
j'aurais besoin de faire une ptite requête qui me compte le nb d'utilisateur qui ont un PC seulement.
 
en gros j'ai bien une requête qui me sors les utilisateurs qui ont un PC (cette requête utilisant un group by et un count), mais j'ai besoin de recompter le résultat de cette requête.
 
Il me faudrait le tout dans une seule requête... si possible en évitant un "IN"... et si possible en évitant une procédure.
 
Qq'un aurait une idée ?
(jsuis sous Oracle)

mood
Publicité
Posté le 16-01-2006 à 17:35:11  profilanswer
 

n°1284779
skeye
Posté le 16-01-2006 à 17:45:05  profilanswer
 

euh.
select count(*) from
(
select utilisateur, count(*)
from chose
where nb_pc = 1
);


---------------
Can't buy what I want because it's free -
n°1284781
skeye
Posté le 16-01-2006 à 17:45:14  profilanswer
 

[:petrus dei]


---------------
Can't buy what I want because it's free -
n°1284971
moi23372
Posté le 16-01-2006 à 20:50:47  profilanswer
 

skeye a écrit :

euh.
select count(*) from
(
select utilisateur, count(*)
from chose
where nb_pc = 1
);


 
ta requete ne fait pas plus que
SELECT count(*)
from chose
where nb_pc = 1 exuse moi :s
 
 

n°1284973
moi23372
Posté le 16-01-2006 à 20:51:18  profilanswer
 

BettaSplendens a écrit :

B'jour,
 
j'aurais besoin de faire une ptite requête qui me compte le nb d'utilisateur qui ont un PC seulement.
 
en gros j'ai bien une requête qui me sors les utilisateurs qui ont un PC (cette requête utilisant un group by et un count), mais j'ai besoin de recompter le résultat de cette requête.
 
Il me faudrait le tout dans une seule requête... si possible en évitant un "IN"... et si possible en évitant une procédure.
 
Qq'un aurait une idée ?
(jsuis sous Oracle)


 
Explique un peu plus ce que tu veux dire. Pourquoi éviter des IN, ou EXISTS, c'est optimisé en ORACLE  

n°1285007
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 16-01-2006 à 21:29:27  profilanswer
 

BettaSplendens a écrit :

B'jour,
 
j'aurais besoin de faire une ptite requête qui me compte le nb d'utilisateur qui ont un PC seulement.
 
(jsuis sous Oracle)


fais gaffe au type de retour du count(*) sous Oracle hein [:joce]


---------------
J'ai un string dans l'array (Paris Hilton)
n°1285009
skeye
Posté le 16-01-2006 à 21:31:12  profilanswer
 

moi23372 a écrit :

ta requete ne fait pas plus que
SELECT count(*)
from chose
where nb_pc = 1 exuse moi :s


 
Je sais, merci...[:itm]
Je ne fais que répondre strictement à ce que j'ai compris de la question...je lançais ça dans l'espoir qu'il m'explique ce que j'avais mal compris.[:petrus75]


---------------
Can't buy what I want because it's free -
n°1285159
BettaSplen​dens
Tout cul tendu mérite son dû
Posté le 16-01-2006 à 23:15:46  profilanswer
 

Arf.. je me doutais que ça serait pas clair...
 
Voilà, j'ai une table utilisateur_workstation (aliasons là UW pour plus de simplicité, avec pour colonne code_U et code_W (code user et code workstation)
pour info la table est "n:n"
je veux connaître le nb d'utilisateur qui ont seulement 1 workstation (et aussi 2 et aussi plus, mais ça sera pour d'autres requêtes).
 
je peux lister les utilisateurs qui possèdent 1 workstation seulemetn simplement avec
  select code_U
  from UW  
  group by code_U
  having count(*)=1
 
mais ce que j'aimerai, c'est connaître le nb de ligne et pas la liste des utilisateurs.
 
En fait, j'aimerai éviter les trucs compliqués, parce que j'ai un outil qui ne me permet pas de faire ce que je veux... mais je crois que de toute façon, faudra que j'passe par une tite procédure, je vois pas comment faire autrement :(
(le but étant d'intégrer ce résultat avec un plein d'autres dans un rapport mensuel)

n°1285420
Beegee
Posté le 17-01-2006 à 13:04:15  profilanswer
 

La requête suivante te permet de lister par nombre de workstation, le nombre de personnes :)
 

Code :
  1. select workstation_counter, count(*)
  2. from (select code_U, count(*) as workstation_counter
  3.       from UW 
  4.       group by code_U)
  5. group by workstation_counter
  6. order by workstation_counter;

n°1285445
BettaSplen​dens
Tout cul tendu mérite son dû
Posté le 17-01-2006 à 13:28:05  profilanswer
 

merci bcp !!


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

  [SQL] count d'un count ??

 

Sujets relatifs
[SQL] aide pour une requete contenant MIN,MAX et COUNT[SQL - ORACLE] Faire un somme de count sur plusieurs tables
[SQL] [Résolu] Requete avec COUNT et GROUP BY[SQL] Problème avec un COUNT()
[SQL] faire un ORDER BY sur le résultat d'un COUNT?[MySQL] - Requete SQL sur 3 tables + 2 count... ca foire a moitier
SQL count(*) [newbie inside][SQL] Count() afficher les ligne avec des 0
SQL et ASP : Stockage d'une réponse à un Count (*)SQL, problème lors du count
Plus de sujets relatifs à : [SQL] count d'un count ??


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