Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

पिछले शुक्रवार को खोजने के लिए एसएसआईएस अभिव्यक्ति

क्या यह काम करेगा (आप GETDATE() . को स्थानापन्न कर सकते हैं @date . के लिए , मैंने इसका उपयोग विभिन्न तिथियों को आसानी से परखने के लिए किया है)

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

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

अद्यतन करें:यहां वही है, लेकिन एसएसआईएस परिवर्तनीय अभिव्यक्ति में किया गया है:

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

अद्यतन #2:यहां बताया गया है कि पिछले शुक्रवार को किसी भी तारीख के लिए कैसे लौटाया जाए, न कि केवल सोमवार

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. उपयोगकर्ता द्वारा कॉन्फ़िगर किए गए समय अंतराल में प्रतिदिन SQL कार्य शेड्यूल करें

  2. SQL सर्वर में बड़ी मात्रा में पुराने डेटा को संग्रहित करना

  3. SQL - काम न करके पिवट टेबल और ग्रुप

  4. SQL सर्वर 2008 में शामिल होने की अधिकतम संख्या कितनी है?

  5. सीलिंग () SQL सर्वर में उदाहरण