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

Làm cách nào để tạo khoảng cách phút giữa hai ngày trong T-SQL?

Bạn có thể sử dụng truy vấn đệ quy như sau:

declare @intervalMinutes int = 10
declare @myDates table (
myId int primary key identity,
startTime datetime,
endTime datetime
)

DECLARE @startTime DATETIME = '2016-07-10 08:00'
DECLARE @endTime DATETIME = '2016-07-10 09:00'

;WITH CTE AS
(
    SELECT  @startTime st
    UNION   ALL
    SELECT  dateadd(MINUTE,@intervalMinutes,st) st
    FROM    cte
    where   dateadd(MINUTE,@intervalMinutes,st) < @endTime
)
INSERT INTO @myDates(startTime,endTime)
SELECT st,dateadd(MINUTE,@intervalMinutes,st) FROM cte

SELECT  * FROm @myDates


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hàm so với Thủ tục được lưu trữ trong SQL Server

  2. Kết nối với SQL Server 2008 từ Java

  3. Có cách nào để chèn hoặc cập nhật SQLBulkCopy nếu tồn tại không?

  4. Làm cách nào để thực hiện một thủ tục được lưu trữ một lần cho mỗi hàng được trả về bởi truy vấn?

  5. SQL Server Management Studio 2008 Runas người dùng trên miền khác nhau qua VPN