एसक्यूएल सर्वर में मैं ^
प्रतीक का उपयोग किया गया है, लेकिन ओरेकल में काम करने के लिए प्रतीत नहीं होता है।बिटवाइस अनन्य या Oracle
ओरेकल में मैं थोड़ा सा विशिष्ट OR
कैसे करूं?
एसक्यूएल सर्वर में मैं ^
प्रतीक का उपयोग किया गया है, लेकिन ओरेकल में काम करने के लिए प्रतीत नहीं होता है।बिटवाइस अनन्य या Oracle
ओरेकल में मैं थोड़ा सा विशिष्ट OR
कैसे करूं?
डॉक्स से:
function bitor(p1 number, p2 number) return number is
begin
return p1-bitand(p1,p2)+p2;
end;
function bitxor(p1 number, p2 number) return number is
begin
return bitor(p1,p2)-bitand(p1,p2);
end;
देखने के लिए कि इन काम, बस 0s और 1s के लिए के साथ तर्क का पालन करें इनपुट, और फिर नहीं कि कोई उधार या क्षय नहीं है।
- मार्कसक्यू
नहीं, आलेख वर्णन करता है कि BIT_OR के लिए यूडीएफ कैसे बनाना है, यह मानक अभिव्यक्ति नहीं है। – Quassnoi
ठीक है ... धन्यवाद –
BITAND ऑपरेटर नहीं है:
select bitand(49,54)+0 from dual;
आप इसे से build up the other operators कर सकते हैं, और here।
मेरा मानना है कि अब आपको डेटाबेस को ट्रिक करने के लिए +0 की आवश्यकता नहीं है। – orbfish
कोई आसान तरीका नहीं है।
आप RAW
मूल्यों में स्ट्रिंग HEX
मूल्यों डाली और उपयोग कर सकते हैं UTL_RAW
:
SELECT UTL_RAW.bit_xor(HEXTORAW(TO_CHAR(1, 'FMX')), HEXTORAW(TO_CHAR(2, 'FMX')))
FROM dual
---
03
xor = p1-2 * बिटैंड (पी 1, पी 2) + पी 2 – Akvel