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

Biểu thức SSIS để tìm thứ Sáu trước đó

Điều này có hoạt động không (bạn có thể thay thế GETDATE() cho @date , Tôi chỉ sử dụng nó để dễ dàng kiểm tra các ngày khác nhau)

DECLARE @date DATETIME
SET @date = '2013-01-14'

SELECT
    PrevFriday = CASE WHEN DATEPART(weekday, @date) <> 2 THEN @date
                      ELSE DATEADD(DAY, -3, @date)
                 END

CẬP NHẬT:Ở đây cũng tương tự, nhưng được thực hiện trong Biểu thức biến SSIS:

DATEPART("dw", GETDATE()) != 2?
GETDATE():
DATEADD("dw", -3, GETDATE())

CẬP NHẬT # 2:Đây là cách quay lại Thứ Sáu trước đó cho BẤT KỲ ngày nào, không chỉ Thứ Hai

SELECT DATEADD(DAY, -1 - (DATEPART(weekday, @date) % 7), @date)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để phát hiện xem một chuỗi có chứa ít nhất một số hay không?

  2. Ràng buộc bảng chéo MS SQL Server

  3. chúng ta có thể có một khóa ngoại không phải là khóa chính trong bất kỳ bảng nào khác không?

  4. SQL:GIỮA với <=và> =

  5. Truy xuất hàng cuối cùng được chèn bằng Uniqueidentifier mà nó không phải là IDENTITY