Page 1 sur 1

Bloqué sur une requete / sous requete sql

Posté : 27 oct. 2014, 00:55
par jotl
Bonjour,

J'ai une table avec des nombres qui sortent à des dates différentes (1 nombre pour chaque date et les dates ne sont pas forcement à intervalle régulier). J'aimerais vérifier le nombre de dates différentes (et non de jour) où ce nombre n'est pas sorti. Et ceci pour tous les intervalles où mon nombre apparait dans la table.

Voila où j'en suis :
select * 
from 
(	
	select 
	date from nums 
	where chiffre=1 
	order by date desc 
	limit 2
) as f
Je récupère ceci:
date
--------------
2014-09-07
--------------
2014-07-26
En gros, j'aimerais faire cette requête dynamiquement :

select * from nums where date between "2014-07-26" and "2014-09-07"

Comment puis-je faire? Merci.

Re: Bloqué sur une requete / sous requete sql

Posté : 28 oct. 2014, 02:15
par DelphineNC
Bonjour jotl

Pouvez-vous, s'il vous plaît, mettre la structure de vos tables afin que je puisse vous aider.
Pour les dates du between , pouvez-vous me dire à quoi elles correspondent.

A+

Re: Bloqué sur une requete / sous requete sql

Posté : 28 oct. 2014, 22:01
par jotl
Bonjour,

Merci pour votre réponse. J'ai finalement trouvé, il me manque la dernière etape,
j'ai cette requête (enfin, c'est plutôt 1 sous requête) et j'aimerais récupérer le min, max et avg sans devoir rappeller la meme requete:
SELECT count( id )-1
FROM nums
WHERE date
BETWEEN n.date
AND coalesce( n.next_date, NOW() ) 
) AS ecart
Une solution serait de faire: (mais ca mange trop de ressource):
SELECT count( id )-1
FROM nums
WHERE date
BETWEEN n.date
AND coalesce( n.next_date, NOW() ) )
) AS ecart_moyen, min( (

SELECT count( id )-1
FROM nums
WHERE 
date
BETWEEN n.date
AND coalesce( n.next_date, NOW() ) 
)
) AS ecart_min, max( (

SELECT count( id )-1
FROM nums
WHERE date
BETWEEN n.date
AND coalesce( n.next_date, NOW() ) )
) AS ecart_max
La structure est simple:

chiffre | date