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

क्लॉज या वैकल्पिक विकल्प में उपनाम का उपयोग करना?

आप WHERE क्लॉज में उपनाम का उपयोग नहीं कर सकते। या तो अभिव्यक्ति दोहराएं (गन्दा) या फिर अपना चयन एक सबक्वायरी में रखें और फिर बाहरी क्वेरी में WHERE क्लॉज डालें:

SELECT Id, Name, City, State
FROM
(
     SELECT
         ID, 
         Name,
         CASE T.N 
             WHEN 1 THEN City1
             WHEN 2 THEN City2
             WHEN 3 THEN City3
         END AS City,
         CASE T.N 
             WHEN 1 THEN State1
             WHEN 2 THEN State2
             WHEN 3 THEN State3
         END AS State
     FROM YourTable
     CROSS JOIN (VALUES(1),(2),(3)) AS T(N)
) T1
WHERE City IS NOT NULL


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. टी-एसक्यूएल और WHERE LIKE% पैरामीटर% क्लॉज

  2. SQL सर्वर में RegEx का उपयोग करना

  3. SQL सर्वर अस्थायी वस्तु कैशिंग

  4. SQL सर्वर में दृश्य

  5. यदि आप किसी डेटाबेस (जैसे, SQL सर्वर) में लेन-देन नहीं करते हैं तो क्या होता है?