2012-08-13 3 views
2

J'ai une table qui a deux colonnes FromDate et ToDate.Trouvez un des jours est en baisse liste des dates

Par exemple.

ID From Date To Date 
1 2012-01-02 2012-01-07 
2 2012-01-08 2012-01-14 
3 2012-01-15 2012-01-21 
4 2012-01-22 2012-01-28 

Ce que je suis en train de faire est quand je passe nouveau De et To dates, pour vérifier contre cette table si la nouvelle chute de la plage de dates dans l'une des ces dates de trouver la associez la valeur ID. (Je ne suis pas passer les valeurs exactes de et ToDate qui sont déjà dans le tableau)

Par exemple, si je passe 2012/01/25 comme A partir et 2012/02/03 que ce jour, il doit retourner 4.

Je ne suis pas tout à fait sûr de savoir comment aborder ce problème.

Une aide?

Merci

Répondre

3
SELECT 
    * 
FROM 
    yourTable 
WHERE 
     to_date >= @from_date_parameter 
    AND from_date <= @to_date_parameter 
+0

+1: Merci. hims056 était 1 min au début :) –

+0

@huMptyduMpty - En fait, 1 min plus tard. – MatBailie

+0

Oh mec oui !!! : D –

2
SELECT ID FROM MyTable 
WHERE FromDate<= '2012/02/03' AND ToDate>= '2012/01/25' 

See this SQLFiddle

+0

Doit être 'AND' plutôt que' OU'. Si les données contiennent l'enregistrement «2099-01-01 à 2099-12-31», elles sont à la fois '> = '2012/01/25'' et passent ainsi votre test actuel ... – MatBailie

+0

@Dems Oh oui. Actualisé. – hims056

+0

+1: Dems était tôt en fait !! –

Questions connexes