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

अहस्ताक्षरित सही शिफ्ट '>>>' एसक्यूएल सर्वर में ऑपरेटर

टी-एसक्यूएल में कोई बिट-शिफ्ट ऑपरेटर नहीं है, इसलिए आपको स्वयं को लागू करना होगा। यहाँ थोड़ा-सा बदलाव लागू किया गया है:http ://dataeducation.com/bitmask-handling-part-4-left-shift-and-right-shift/

आपको अपने पूर्णांक को एक varbinary में डालना होगा, बिटवाई शिफ्ट फ़ंक्शन का उपयोग करना होगा और पूर्णांक पर वापस डालना होगा और (उम्मीद है) हे-प्रेस्टो! आपका परिणाम अपेक्षित है।

कार्यान्वयन और परीक्षण पाठक के लिए एक अभ्यास के रूप में छोड़ दिया गया है...

संपादित करें - नीचे दी गई टिप्पणियों में मैंने जो कुछ भी डाला है उसे स्पष्ट करने के लिए, इस SQL ​​​​को निष्पादित करने से विभिन्न कास्ट द्वारा दिए गए विभिन्न परिणाम प्रदर्शित होंगे:

SELECT -5381 AS Signed_Integer,
        cast(-5381 AS varbinary) AS Binary_Representation_of_Signed_Integer,
        cast(cast(-5381 AS bigint) AS varbinary) AS Binary_Representation_of_Signed_Big_Integer, 
        cast(cast(-5381 AS varbinary) AS bigint) AS Signed_Integer_Transposed_onto_Big_Integer, 
        cast(cast(cast(-5381 AS varbinary) AS bigint) AS varbinary) AS Binary_Representation_of_Signed_Integer_Trasposed_onto_Big_Integer

परिणाम:

Signed_Integer Binary_Representation_of_Signed_Integer                        Binary_Representation_of_Signed_Big_Integer                    Signed_Integer_Transposed_onto_Big_Integer Binary_Representation_of_Signed_Integer_Trasposed_onto_Big_Integer
-------------- -------------------------------------------------------------- -------------------------------------------------------------- ------------------------------------------ ------------------------------------------------------------------
-5381          0xFFFFEAFB                                                     0xFFFFFFFFFFFFEAFB                                             4294961915                                 0x00000000FFFFEAFB


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. गतिशील एसक्यूएल से बचने का एक और शानदार तरीका?

  2. SQL सर्वर प्रबंधन स्टूडियो (SSMS)

  3. त्रुटि 'सबरेपोर्ट निर्दिष्ट स्थान पर नहीं मिल सका। कृपया सत्यापित करें कि सबरिपोर्ट प्रकाशित हो चुकी है और नाम सही है।

  4. कैसे पता करें कि पेज लॉक किस टेबल से संबंधित है

  5. कॉलम के साथ sp_rename में क्या गलत है?