obtenir dans un même ResultSet le résultats de plusieurs requètes

obtenir dans un même ResultSet le résultats de plusieurs requètes - SQL/NoSQL - Programmation

Marsh Posté le 23-05-2006 à 11:10:00    

Bonjour,  
je cherche à faire le chose suivante : obtenir dans un même ResultSet le résultat de plusieurs requètes.
Je m'explique :
ma table "BENEFICIAIRES" dispose de :
- "NOM" (varchar)
- "RMI" (boolean)
- "ASS" (boolean)
 
je souhaiterai combiner les requètes :  
SELECT COUNT(*) AS "nb. rmi" FROM BENEFICIAIRES WHERE RMI = 'true'
et  
SELECT COUNT(*) AS "nb. ass" FROM BENEFICIAIRES WHERE ASS = 'true'
 
Pour obtenir un résultat où "nb. rmi" et "nb. ass" sont comme deux colones d'un même résultat...


---------------
Les Vers Solitaires, on aime ... ou pas !
Reply

Marsh Posté le 23-05-2006 à 11:10:00   

Reply

Marsh Posté le 23-05-2006 à 11:14:54    

Téoriquement, cette requète est juste, non ?


SELECT  "NB. ASS","NB. RMI" FROM  
(SELECT COUNT(*) AS "NB. ASS" FROM BENEFICIAIRES WHERE ASS = 'true'),  
(SELECT COUNT(*) AS "NB. RMI" FROM BENEFICIAIRES WHERE RMI = 'true')


---------------
Les Vers Solitaires, on aime ... ou pas !
Reply

Marsh Posté le 23-05-2006 à 11:15:19    

bah fais des select imbriqué :)  
 
edit : grilled  :D


Message édité par Sebou77 le 23-05-2006 à 11:15:49
Reply

Marsh Posté le 23-05-2006 à 11:42:17    

Pas sur du tout que ma base de données (logicieil "Base", de OpenOffice.org), supporte les requètes imbriquées...
D'ailleurs, la requète que je viens de donner, elle vous parait correcte ? Parce que, sous "Base", elle passe pas ... :(


---------------
Les Vers Solitaires, on aime ... ou pas !
Reply

Marsh Posté le 23-05-2006 à 11:47:54    

la dernière requete que tu as donné c'est normale qu'elle passe pas car elle est fausse :/
Faut que tu utilise WHERE si tu as des select inbriqué

Reply

Marsh Posté le 23-05-2006 à 12:06:49    

Ha !? Mais je veux pas de restriction moi...


---------------
Les Vers Solitaires, on aime ... ou pas !
Reply

Marsh Posté le 23-05-2006 à 12:11:02    

Sebou77 a écrit :

la dernière requete que tu as donné c'est normale qu'elle passe pas car elle est fausse :/
Faut que tu utilise WHERE si tu as des select inbriqué


 :??:  
 
Je dirais plutot qu'elle est fausse car tu as besoin de faire des alias sur tes sous-requêtes:

Code :
  1. SELECT  ASS.NB, RMI.NB FROM 
  2. (SELECT COUNT(*) AS "NB" FROM BENEFICIAIRES WHERE ASS = 'true') as ASS, 
  3. (SELECT COUNT(*) AS "NB" FROM BENEFICIAIRES WHERE RMI = 'true') as RMI


Reply

Marsh Posté le 23-05-2006 à 12:19:47    

ha oui anapajari, pas bête. Par contre ça passe tjs pas sous OpenOffice ! :(


---------------
Les Vers Solitaires, on aime ... ou pas !
Reply

Marsh Posté le 23-05-2006 à 12:23:44    

si les select from select ne marche pas, tu peux faire :
 
select 'table1', count(*) from table1
union
select 'table2', count(*) from table2
union
select 'table3', count(*) from table3

Reply

Marsh Posté le 23-05-2006 à 12:29:13    

El_gringo a écrit :

un résultat où "nb. rmi" et "nb. ass" sont comme deux colones d'un même résultat...


 

Arjuna a écrit :

si les select from select ne marche pas, tu peux faire :
select 'table1', count(*) from table1
union
select 'table2', count(*) from table2
union
select 'table3', count(*) from table3


ça va faire plusieurs lignes et pas plusieurs colonnes :o
 

Reply

Marsh Posté le 23-05-2006 à 12:29:13   

Reply

Marsh Posté le 23-05-2006 à 13:06:45    

ben oui. Merci quand même Arjuna


---------------
Les Vers Solitaires, on aime ... ou pas !
Reply

Marsh Posté le 23-05-2006 à 14:22:29    

Bon, donc personne n'a d'autre idée ? J'imagine que ce que je voudrais faire est impossible sur me base de données ! :(


---------------
Les Vers Solitaires, on aime ... ou pas !
Reply

Marsh Posté le 23-05-2006 à 14:25:55    

tu peux faire des vues dans ton truc?

Reply

Marsh Posté le 23-05-2006 à 14:30:38    

oui. elle est bien ton idée ! J'essaye de ce pas.


---------------
Les Vers Solitaires, on aime ... ou pas !
Reply

Marsh Posté le 23-05-2006 à 16:29:23    

Je vois pas trop en quoi passer de colonnes à lignes pose problème... C'est pour quoi faire ?

Reply

Marsh Posté le 23-05-2006 à 16:51:30    

Pour faire un état, en utilisant Base, l'équivalent d'access dans la suite OpenOffice.
La solution utilisant les vues fonctionne. merci.


---------------
Les Vers Solitaires, on aime ... ou pas !
Reply

Marsh Posté le 23-05-2006 à 16:53:05    

ah ouais, forcément.

Reply

Marsh Posté le 23-05-2006 à 17:02:24    

pourquoi "forcément" ?


---------------
Les Vers Solitaires, on aime ... ou pas !
Reply

Marsh Posté le 23-05-2006 à 17:04:08    

ben forcément, ce genre de trucs marchent record par record, et on ne peux pas dire "t'en fait 3 d'un coup"

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed