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

Theo dõi SQL Server Thay đổi theo lịch trình khi ngày thay đổi

Sau đây đưa ra một bảng ca dao. Không rõ chính xác bạn muốn làm gì, nhưng bạn có thể thiết kế ngược để xác định sự thay đổi từ ngày / giờ của một sự kiện bằng cách sử dụng một số tính toán được hiển thị ở đây.

CHỈNH SỬA :Đã sửa case để xử lý theo mẫu 2/2/3/2.

; with Samples as (
  -- Start at the beginning of 2013.
  select Cast( '01-01-2013 00:00' as DateTime ) as Sample
  union all
  -- Add hours up to the desired end date.
  select DateAdd( hour, 1, Sample )
    from Samples
    where Sample <= '2013-01-30'
  ),
  ExtendedSamples as (
  -- Calculate the number of days since the beginning of the first shift on 1/1/2013.
  select Sample, DateDiff( hour, '01-01-2013 07:00', Sample ) / 24 as Days
    from Samples ),
  Shifts as (
  -- Calculate the shifts for each day.
  select *,
    case when ( Days + 1 ) % 9 in ( 0, 1, 4, 5 ) then 'C/D' else 'A/B' end as Shifts
    from ExtendedSamples )
  select *,
    case when DatePart( hour, Sample ) between 7 and 18 then Substring( Shifts, 1, 1 ) else Substring( Shifts, 3, 1 ) end as Shift
    from Shifts
    option ( maxrecursion 0 )


  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 SERVERPROPERTY () để nhận thông tin máy chủ trong SQL Server

  2. Gọi một API từ thủ tục được lưu trữ của SQL Server

  3. Tạo tệp cơ sở dữ liệu SQL Server CE theo lập trình

  4. Chúng tôi có thể từ chối xóa khỏi các bảng cụ thể không?

  5. Khôi phục bản sao lưu SQL Server 2000 trên SQL Server 2012