Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Làm cách nào để xác định trong SQL Server nếu một phạm vi dateTime chồng lên một phạm vi khác

Bạn có thể làm như thế này

declare @T table (ID int, startDateTime datetime, endDateTime datetime)

insert into @T values
(  1 , '2010-01-01 10:30:00' , '2010-01-01 11:00:00'),
(  2 , '2010-01-01 10:30:00' , '2010-01-01 11:30:00'),
(  3 , '2010-01-01 11:00:00' , '2010-01-01 11:30:00'),
(  4 , '2010-01-01 11:00:00' , '2010-01-01 12:00:00'),
(  5 , '2010-01-01 11:30:00' , '2010-01-01 12:00:00')

declare @startDateTime datetime
declare @endDateTime datetime


set @startDateTime = '2010-01-01 11:00:00'
set @endDateTime = '2010-01-01 11:30:00'

select *
from @T
where
  startDateTime < @endDateTime and
  endDateTime > @startDateTime



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server 2016:View Designer

  2. Hiệu suất INNER JOIN so với LEFT JOIN trong SQL Server

  3. Khám phá các thao tác lập chỉ mục trực tuyến cấp độ phân vùng trong SQL Server 2014 CTP1

  4. Cách kết nối với SQL Server với xác thực cửa sổ từ Node.JS bằng mô-đun mssql

  5. Tạo lịch biểu tác nhân SQL Server với T-SQL