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

Tạo Ngày giữa các phạm vi ngày

Dễ dàng trên SQL 2005+; dễ dàng hơn nếu bạn có một con số hoặc bảng kiểm đếm. Tôi đã làm giả nó bên dưới:

DECLARE @StartDate DATE = '20110901'
  , @EndDate DATE = '20111001'

SELECT  DATEADD(DAY, nbr - 1, @StartDate)
FROM    ( SELECT    ROW_NUMBER() OVER ( ORDER BY c.object_id ) AS Nbr
          FROM      sys.columns c
        ) nbrs
WHERE   nbr - 1 <= DATEDIFF(DAY, @StartDate, @EndDate)

Nếu bạn có bảng kiểm đếm, hãy thay thế truy vấn con bằng bảng. Không đệ quy.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sử dụng INSERT INTO từ SQL Server để thay đổi dữ liệu Salesforce

  2. Cài đặt cụm chuyển đổi dự phòng SQL Server -2

  3. Kiểm tra trạng thái của tất cả thư cơ sở dữ liệu trong SQL Server (T-SQL)

  4. Cách thay thế một chuỗi trong cột bảng SQL Server

  5. Đặt hàng Bằng cách sử dụng một tham số cho tên cột