Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Controlla se la data si sovrappone in SQL

Prova questa logica:

SELECT te.* 
FROM [dbo].[tblBranchTimingEntry]  te
WHERE BranchEntryId = 24 AND
      '2015-01-14' < toDate AND
      '2015-02-28' > fromDate;

A seconda di cosa intendi per "sovrapposizione", potrebbe essere <= e/o >= .

La logica è:due intervalli di date si sovrappongono:il primo inizia prima della fine del secondo e il primo termina dopo l'inizio del secondo.