दिलचस्प सवाल।
मैं वास्तव में MySQL पर्यावरण में फ्लोट नहीं चुनूंगा। अतीत में उस डेटाटाइप के साथ सटीकता के साथ बहुत सी समस्याएं थीं।
मेरे लिए, विकल्प int
. के बीच होगा और decimal(18,4)
.
मैंने फ़्लोटिंग पॉइंट मानों का प्रतिनिधित्व करने के लिए उपयोग किए जाने वाले वास्तविक दुनिया के उदाहरण पूर्णांक देखे हैं। जेडी एडवर्ड्स डेटाटेबल्स के आंतरिक सभी ऐसा करते हैं। मात्राओं को आम तौर पर 10000 से विभाजित किया जाता है। जबकि मुझे यकीन है कि यह तेज़ और छोटी इन-टेबल है, इसका सीधा सा मतलब है कि अगर हम उनके साथ कुछ भी करना चाहते हैं, तो हमें हमेशा दशमलव मान पर कास्ट करना होगा, विशेष रूप से विभाजन।पी>
प्रोग्रामिंग के नजरिए से, मैं हमेशा decimal
के साथ काम करना पसंद करूंगा कीमत के लिए (या money
RDBMS में जो इसका समर्थन करते हैं)।