আমি বিপরীত অবস্থান গ্রহণ করব।
FLOAT
আনুমানিক সংখ্যার জন্য, যেমন শতাংশ, গড় ইত্যাদির জন্য। আপনি অ্যাপ্লিকেশন কোডে বা FORMAT()
মাইএসকিউএল এর ফাংশন ব্যবহার করে মানগুলি প্রদর্শিত করার জন্য আপনাকে ফর্ম্যাট করা উচিত ।
কখনও পরীক্ষা করবেন না float_value = 1.3
; এটি ব্যর্থ হওয়ার অনেক কারণ রয়েছে।
DECIMAL
আর্থিক মানগুলির জন্য ব্যবহার করা উচিত। DECIMAL
যখন কোনও মানটি ডলার / সেন্ট / ইউরো / ইত্যাদিতে গোল করতে হয় তখন দ্বিতীয় রাউন্ডিং এড়ানো হয়। হিসাবরক্ষকরা সেন্টের ভগ্নাংশ পছন্দ করেন না।
মাইএসকিউএল এর বাস্তবায়ন DECIMAL
65 টি উল্লেখযোগ্য অঙ্কের অনুমতি দেয়; FLOAT
প্রায় 7 এবং DOUBLE
প্রায় 16 দেয় 7 সাধারণত সেন্সর এবং বৈজ্ঞানিক গণনার জন্য পর্যাপ্ত পরিমাণের চেয়ে বেশি।
হিসাবে "শতাংশ" - কখনও কখনও আমি ব্যবহার করেছি TINYINT UNSIGNED
যখন আমি কেবল 1 বাইট স্টোরেজ গ্রহণ করতে চাই এবং খুব বেশি নির্ভুলতার প্রয়োজন হয় না; কখনও কখনও আমি ব্যবহার করেছি FLOAT
(4 বাইট)। শতাংশের জন্য কোনও ডেটাটাইপ বিশেষভাবে সুর করা নেই। (এছাড়াও নোট করুন, DECIMAL(2,0)
এটি মানটি ধরে রাখতে পারে না 100
, সুতরাং প্রযুক্তিগতভাবে আপনার প্রয়োজন হবে DECIMAL(3,0)
))
বা কখনও কখনও আমি FLOAT
0 এবং 1 এর মধ্যে একটি মান ধারণ করে এমন একটি ব্যবহার করেছি তবে তবে "শতাংশ" প্রদর্শন করার আগে আমাকে 100 দ্বারা গুণ করা নিশ্চিত করতে হবে।
অধিক
"শতাংশ, গড়, হার" এর তিনটিই ভাসমানের মতো গন্ধ পান, যাতে এটি আমার প্রথম পছন্দ হবে।
ডেটাটাইপ সিদ্ধান্ত নেওয়ার জন্য একটি মানদণ্ড ... মানটির কয়টি অনুলিপি থাকবে?
যদি আপনার শতকরা এক ভাগের জন্য একটি কলামের সাথে একটি বিলিয়ন-সারির টেবিল থাকে, তবে এটি বিবেচনা করুন যে TINYINT
1 বাইট (1 জিবি মোট) FLOAT
লাগবে , তবে 4 বাইট (মোট 4 জিবি) লাগবে। ওও, বেশিরভাগ অ্যাপ্লিকেশনগুলিতে এমন অনেকগুলি সারি নেই, সুতরাং এটি প্রাসঙ্গিক নাও হতে পারে।
একটি 'সাধারণ' নিয়ম হিসাবে, "সঠিক" মানগুলির কিছু ফর্ম INT
বা ব্যবহার করা উচিত DECIMAL
। অবাস্তব জিনিস (বৈজ্ঞানিক গণনা, বর্গক্ষেত্র, বিভাগ, ইত্যাদি) ব্যবহার করা উচিত FLOAT
(বা DOUBLE
)।
তদতিরিক্ত, আউটপুট বিন্যাস সাধারণত অ্যাপ্লিকেশন সামনের প্রান্তে ছেড়ে যাওয়া উচিত। এটি, যদিও কোনও "গড়" "14.6666666 ..." তে গণনা করতে পারে, ডিসপ্লেতে "14.7" এর মতো কিছু দেখাতে হবে; এটি মানুষের জন্য বন্ধুত্বপূর্ণ। এদিকে, আপনার পরে সিদ্ধান্ত নেওয়ার অন্তর্নিহিত মান রয়েছে যে "15" বা "14.667" পছন্দসই আউটপুট বিন্যাস ting
"0.00 - 100.00" পরিসীমাটি পূর্বে নির্ধারণের সাথে FLOAT
আউটপুট ফর্ম্যাটিং বা DECIMAL(5,2)
(3 বাইট) ব্যবহার করে করা যেতে পারে যা আপনি সর্বদা নির্দেশিত নির্ভুলতা চান ।