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

संस्करण 5.0.3 के अनुसार mysql तालिका के दशमलव क्षेत्र में ऋणात्मक संख्या संग्रहीत करना

जो मैं समझता हूं, दस्तावेज़ीकरण कह रहा है कि यह शाब्दिक . को संग्रहीत नहीं करेगा "-" चरित्र , जिसका अर्थ है कि यह शायद अब वही कर रहा है जो अन्य हस्ताक्षरित INTEGER फ़ील्ड ने हमेशा किया है और इसके बजाय ऋणात्मक संख्याओं को दर्शाने के लिए एक साइन बिट संग्रहीत कर रहा है।

आप अभी भी संख्या से पहले एक ऋण चिह्न देख रहे हैं क्योंकि यह उस साइन बिट के परिणामस्वरूप MySQL द्वारा उत्पन्न किया जा रहा है।

यदि आप साइन बिट को नहीं समझते हैं, तो आप विचार कर सकते हैं कि एक हस्ताक्षरित बाइट -128 से 127 तक की संख्याओं को कैसे संग्रहीत कर सकता है, जबकि एक अहस्ताक्षरित बाइट 0 से 255 तक संख्याओं को संग्रहीत कर सकता है। ऐसा इसलिए है क्योंकि हस्ताक्षरित संख्या में 8 बिट्स में से एक है +/- स्टोर करने के लिए इस्तेमाल किया जा रहा है (1 नकारात्मक है, 0 सकारात्मक है), जबकि शेष बिट्स 2^7 (-128 या 127) तक की संख्या प्रदान करते हैं।

इसलिए, उदाहरण के लिए, यदि बिट्स 1111 में साइन बिट होता तो वे -7 (ऋणात्मक + 4 + 2 + 1) के बराबर होते, लेकिन यदि वे अहस्ताक्षरित होते तो वे 15 (8 + 4 + 2 + 1) के बराबर होते। यह अभी भी उतनी ही मात्रा में बिट्स संग्रहीत किया जा रहा है।

आपको आश्चर्य हो सकता है कि किसी हस्ताक्षरित संख्या में ऋणात्मक बाउंड 8वें बिट का उपयोग क्यों कर सकता है, जबकि धनात्मक बाउंड 7 बिट्स (8वें बिट से 1 कम) के योग तक सीमित है। ऐसा इसलिए है क्योंकि 1000000 को नकारात्मक और 8वें बिट दोनों को एक साथ माना जाता है, क्योंकि -0 का इसका प्रतिनिधित्व अन्यथा 0000000 के साथ बेमानी है जो 0 का प्रतिनिधित्व करता है। नकारात्मक और सकारात्मक शून्य के बीच कोई अंतर नहीं है, इसलिए एक नकारात्मक सबसे महत्वपूर्ण बिट हमेशा मूल्य होता है उस बिट का ही (लेकिन नकारात्मक)।




  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. MySQL में या अस्थायी संग्रहीत कार्यविधियों का उपयोग करके सभी संग्रहीत कार्यविधियाँ छोड़ें

  3. तालिका में BLOB कॉलम के कुल डेटा आकार की गणना करना

  4. MySql:IN ऑपरेटर का उपयोग करके स्टेटमेंट का चयन करें

  5. एपी_पास_ब्रिगेड हैंडल_रेक्वेस्ट_आईपीसी फ़ंक्शन में विफल रहा