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

एमएस एसक्यूएल सर्वर - एक चर के लिए एक तिथि निर्दिष्ट करना

आप इस तरह एक वैरिएबल असाइन नहीं कर सकते हैं। इसके अलावा, क्या बात है? आप उस चर का उपयोग कहां कर रहे हैं? बस set @MYYEAR = को हटा दें और आपको ठीक होना चाहिए। यदि आप वास्तव में उस वेरिएबल को उस तर्क के साथ असाइन करना चाहते हैं, तो इसे अपने मुख्य SELECT . के बाहर करें बयान।

declare @MYYEAR int
set @MYYEAR = 
(SELECT  
    CASE
        WHEN CONVERT(INTEGER,BTHDAT) = 0 THEN 0
        WHEN  datepart(DY,convert(date, BTHDAT)) > datepart(DY,'2015/07/01') THEN DATEDIFF(YEAR, convert(date, BTHDAT),'2015/07/01') - 1
        ELSE DATEDIFF(YEAR,convert(date, BTHDAT),'2015/07/01')  
    END
FROM SomeTable)

SELECT  
    SERVICE_GROUP, 
    SERVICE_CATEGORY,
    @MYYEAR
FROM
    SomeOtherTable



  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 सर्वर BLOB में .NET ऑब्जेक्ट का एक बड़ा ग्राफ कैसे क्रमबद्ध करूं?

  2. LEFT या SUBSTRING फ़ंक्शन को पास किया गया अमान्य लंबाई पैरामीटर

  3. Scope_Identity (), Identity (), @@ Identity, और Ident_Current () में क्या अंतर है?

  4. SQL सर्वर बैकअप DB फ़ाइलों से इतना बड़ा क्यों है?

  5. SQL सर्वर (T-SQL) में एक विभाजन को दो में विभाजित करें