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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [résolu] Compter le nombre d'entrées de plusieurs tables

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[résolu] Compter le nombre d'entrées de plusieurs tables

n°1524219
papanorami​x
Posté le 06-03-2007 à 10:54:47  profilanswer
 

Bonjour,
petit problème du jour : comment compter le nombre d'entrées de certaines tables ?
 
si je fais un

Code :
  1. SELECT COUNT(*) as nbr_annonces FROM table1, table2, table3


 
me retourne 0 si une des tables est vide !
 
Quelle est la bonne méthode ? là j'ai un blanc !
merci, bonne journée


Message édité par papanoramix le 06-03-2007 à 12:08:39
mood
Publicité
Posté le 06-03-2007 à 10:54:47  profilanswer
 

n°1524234
skeye
Posté le 06-03-2007 à 11:10:53  profilanswer
 

une somme des count de chaque table?:o


---------------
Can't buy what I want because it's free -
n°1524237
papanorami​x
Posté le 06-03-2007 à 11:31:02  profilanswer
 

j'ai bien essayé:

Code :
  1. SELECT COUNT(table1.id) + COUNT(table2.id) + COUNT(table3.id) as nbr_entrees FROM table1,table2,table3


 
mais il me retourne 0 si une table est vide.

n°1524239
skeye
Posté le 06-03-2007 à 11:33:48  profilanswer
 

ça doit marcher ça non?

 

select sum(toto)
from (
  select count(*) as toto from table1
  union
  select count(*) as toto from table2
  union
  select count(*) as toto from table3
)

 

[:dawao]


Message édité par skeye le 06-03-2007 à 11:34:05

---------------
Can't buy what I want because it's free -
n°1524240
skeye
Posté le 06-03-2007 à 11:34:48  profilanswer
 

(Ta syntaxe à toi elle fait un produit des tables, c'est n'importe-quoi...:o)


---------------
Can't buy what I want because it's free -
n°1524247
papanorami​x
Posté le 06-03-2007 à 11:46:03  profilanswer
 

et pourquoi elle fait un produit si je demande une addition ?!
je teste ta solution.

n°1524251
skeye
Posté le 06-03-2007 à 11:50:35  profilanswer
 

papanoramix a écrit :

et pourquoi elle fait un produit si je demande une addition ?!


Parce-que tu ne fais pas de jointure, tiens.:o
Essaie un select * au lieu d'un count, tu verras le résultat.:o


---------------
Can't buy what I want because it's free -
n°1524275
papanorami​x
Posté le 06-03-2007 à 12:06:36  profilanswer
 

Il me retourne une erreur : #1248 - Every derived table must have its own alias  
 

n°1524278
skeye
Posté le 06-03-2007 à 12:07:12  profilanswer
 

montre ta requête. Chez moi ce que j'ai posté plus haut marche.


---------------
Can't buy what I want because it's free -
n°1524280
papanorami​x
Posté le 06-03-2007 à 12:08:14  profilanswer
 

ok j'ai trouvé :
 

Code :
  1. select sum(toto)
  2. from (
  3.   select count(*) as toto from table1
  4.   union
  5.   select count(*) as toto from table2
  6.   union
  7.   select count(*) as toto from table3
  8. ) as bidule


 
merci Skeye

mood
Publicité
Posté le 06-03-2007 à 12:08:14  profilanswer
 

n°1570245
Zorro561
Posté le 05-06-2007 à 12:05:16  profilanswer
 

Je me permets de reprendre ce sujet car j'aimerais faire la même chose, mais sans le SUM (c'est-à-dire obtenir le nombre d'entrées de chaque table dans des variables séparées).
Si on enlève juste le SUM ça merde, il ne compte pas la deuxième.

Message cité 1 fois
Message édité par Zorro561 le 05-06-2007 à 12:18:48
n°1570252
MagicBuzz
Posté le 05-06-2007 à 12:23:57  profilanswer
 

Zorro561 a écrit :

Je me permets de reprendre ce sujet car j'aimerais faire la même chose, mais sans le SUM (c'est-à-dire obtenir le nombre d'entrées de chaque table dans des variables séparées).
Si on enlève juste le SUM ça merde, il ne compte pas la deuxième.


:sweat:
 

Code :
  1. SELECT nomtable, nblignes
  2. FROM (
  3.  SELECT 'table1' nomtable, count(*) nblignes FROM table1
  4.  union ALL
  5.  SELECT 'table2' nomtable, count(*) nblignes FROM table2
  6.  union ALL
  7.  SELECT 'table3' nomtable, count(*) nblignes FROM table3
  8. ) AS tmp


Message édité par MagicBuzz le 05-06-2007 à 12:24:14

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

  [résolu] Compter le nombre d'entrées de plusieurs tables

 

Sujets relatifs
[Résolu]Liste déroulante dynamique qui ne s'affiche pasVBA access fermer word [résolu]
[résolu] Besoin d'aide pour un conversion Pascal->php[Ajax] [résolu] souci reponse du serveur
[Resolu] Coder le style en PHP (police, taille police)Operations sur Tableau à 2 dimention
Calcul Impossible pour Moi !! [Resolu]Nombre de mois différents par rapport a des dates
[Résolu][Scripting]Ouverture de session/Mappage selon groupes[Résolu] [Oracle10g] Erreur connexion au serveur
Plus de sujets relatifs à : [résolu] Compter le nombre d'entrées de plusieurs tables


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