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

tháng giữa hai ngày trong máy chủ sql với ngày bắt đầu và ngày kết thúc của mỗi ngày trong máy chủ sql

Một phương pháp là CTE đệ quy:

with cte as (
      select dateadd(day, 1 - day(@startdate), @startdate) as som,
             eomonth(@startdate) as eom
      union all
      select dateadd(month, 1, som), eomonth(dateadd(month, 1, som))
      from cte
      where dateadd(month, 1, som) < @enddate
     )
select *
from cte;

Nếu bạn muốn tên của tháng, thì bạn có thể sử dụng datename(month, som) .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dữ liệu &Thông tin và Khối lượng Dữ liệu là gì

  2. Câu lệnh Sql Case trong Sql IN

  3. Các tiêu chuẩn định dạng SQL

  4. Làm cách nào để SQL Server xác định kiểu chuyển đổi khi nó không được chỉ định?

  5. Ký tự lạ trong cơ sở dữ liệu SQL