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

ओरेकल बिटऔर फ़ंक्शन

बाइनरी में, "सेट" का अर्थ है "मान 1 है"। "नॉट सेट" का अर्थ है "इसका मान 0 है"।

बिटैंड के लिए Oracle डॉक्स से:

"परिणाम की गणना कई चरणों में की जाती है। सबसे पहले, प्रत्येक तर्क A को SIGN(A)*FLOOR(ABS(A)) के मान से बदल दिया जाता है। इस रूपांतरण में प्रत्येक तर्क को शून्य की ओर छोटा करने का प्रभाव होता है। अगला, प्रत्येक तर्क A (जो होना चाहिए) अब एक पूर्णांक मान हो) को n-बिट दो के पूरक बाइनरी पूर्णांक मान में बदल दिया जाता है। दो बिट मानों को बिटवाइज़ और ऑपरेशन का उपयोग करके संयोजित किया जाता है। अंत में, परिणामी n-बिट दो का पूरक मान वापस NUMBER में परिवर्तित हो जाता है।"

सीधे शब्दों में कहें, यह फ़ंक्शन अपने तर्कों को छोटा करता है, उन्हें एक बाइनरी नंबर (वर्तमान में 128 बिट्स तक सीमित) में परिवर्तित करता है, और दो बाइनरी नंबर एक साथ है, और बाइनरी नंबर को वापस NUMBER में बदलने का परिणाम देता है।

शून्य और एक के सभी संभावित संयोजनों का परिणाम यहां दिया गया है:

SELECT BITAND(0, 0) AS "0, 0",  -- i.e. 0 AND 0 = 0
       BITAND(0, 1) AS "0, 1",  -- i.e. 0 AND 1 = 0
       BITAND(1, 0) AS "1, 0",  -- i.e. 1 AND 0 = 0
       BITAND(1, 1) AS "1, 1"   -- i.e. 1 AND 1 = 1
  FROM DUAL;

एक अधिक जटिल उदाहरण 11 और 5 को एक साथ जोड़ना होगा। बाइनरी में, 11 दशमलव "1011" बन जाता है। 5 दशमलव "0101" बाइनरी बन जाता है। यदि आप और ये मान एक साथ हैं, जैसे कि

1 0 1 1
0 1 0 1
-------
0 0 0 1

आपको 1 बाइनरी मिलती है, जो दशमलव में बदलने पर भी 1 होती है।

साझा करें और आनंद लें।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle में महीने के हिसाब से ग्रुप करें

  2. क्या विफलता के बिंदु से कोड चलाना जारी रखना संभव है?

  3. ओरेकल:डायनेमिक एसक्यूएल

  4. DBMS_APPLICATION_INFO.SET_CLIENT_INFO काम नहीं कर रहा

  5. Oracle में regexp_substr . के साथ सीमांकक के रूप में स्पेस और कैरेक्टर द्वारा विभाजित स्ट्रिंग