ستون ها و انواع داده در اوراکل – انواع عددی

نوع دیگری از داده هایی که می توانیم در ستون های پایگاه داده ها ذخیره کنیم، اعداد هستند. اعداد شامل عدد صحیح و اعداد ممیز شناور (اعشاری) می شوند. همچنین می توانیم اعداد را با علامت (عدد منفی) و بی علامت ذخیره کنیم. شکل زیر فهرست تمامی انواع عددی (numeric data types) درون اوراکل را نشان می دهد.

ستون ها و انواع داده در اوراکل – انواع عددی

نوع دیگری از داده هایی که می توانیم در ستون های پایگاه داده ها ذخیره کنیم، اعداد هستند. اعداد شامل عدد صحیح و اعداد ممیز شناور (اعشاری) می شوند. همچنین می توانیم اعداد را با علامت (عدد منفی) و بی علامت ذخیره کنیم. شکل زیر فهرست تمامی انواع عددی (numeric data types) درون اوراکل را نشان می دهد.

یکی از پر استفاده ترین انواع عددی، نوع (NUMBER(p,s است که در آن p (یا precision) دقت و s (یا scale) مقیاس عدد را تعیین می کنند. به مثال (NUMBER(5, 2 یک عدد ۵۷ رقمی را ایجاد می کند که ۳ رقم آن برای بخش قبل نقطه (ممیز شناور) و ۲ رقم آن برای بعد ممیز شناور خواهد بود. به طور مثال عدد ۱۲۳.۸۹ که در کل ۵ رقم دهدهی (دسیمال – decimal) است که سه رقم آن پیش از علامت نقطه و دو رقم آن بعد علامت نقطه قرار می گیرند.

به طور کلی در ارتباط  با ذخیره سازی اعداد در ستونی از نوع (NUMBER(p,s حالت های زیر وجود دارد:

۱ – وقتی رقم های عددی که ما می خواهیم ذخیره کنیم از عدد p بزرگتر باشد

به طور مثال فرض کنید می خواهیم عدد ۱۲۳.۸۹ را در ستونی ذخیره کنیم که به صورت (NUMBER(3,2 ایجاد شده است. در این حالت عدد p=3 تعداد کل مجاز ارقام دهدهی است که می توانیم در ستون ذخیره کنیم که ۲ رقم آن برای پیش از نقطه و ۱ رقم آن برای پس از نقطه است ولی عدد ۱۲۳.۸۹ کلا ۵ رقم است که بزگتر از عدد p=3 است پس امکان پذیر نیست.

به طور مثال فرض کنید می خواهیم عدد ۱۲۳.۸۹ را در ستونی ذخیره کنیم که به صورت (NUMBER(4,2 ایجاد شده است. در این حالت عدد p=4 تعداد کل مجاز ارقام دهدهی است که می توانیم در ستون ذخیره کنیم که ۲ رقم آن برای پیش از نقطه و ۲ رقم آن برای پس از نقطه است ولی عدد ۱۲۳.۸۹ کلا ۵ رقم است که بزگتر از عدد p=4 است پس امکان پذیر نیست.

به طور کلی تعداد رقم های یک عدد (البته به جز علامت نقطه یا ممیز شناور) نباید بیشتر از عدد p باشد. همچنین زمانی که می خواهیم محدوده ای را تعیین کنیم، باید با صرف نظر کردن از علامت نقطه، تعداد کل رقم را با p تعیین کنیم که p-s رقم پیش از علامت نقطه و مابقی بعد نقطه قرار می گیرند.

به طور مثال فرض کنید می خواهیم عدد ۱۲۳.۸۹ را در ستونی ذخیره کنیم که به صورت (NUMBER(5,2 ایجاد شده است. در این حالت عدد p=5 تعداد کل مجاز ارقام دهدهی است که می توانیم در ستون ذخیره کنیم که ۳ رقم آن برای پیش از نقطه و ۲ رقم آن برای پس از نقطه است چون عدد ۱۲۳.۸۹ کلا ۵ رقم است که برابر است با عدد p=3 است پس ذخیره سازی آن امکان پذیر است.

به طور مثال فرض کنید می خواهیم عدد ۱۲۳.۸ را در ستونی ذخیره کنیم که به صورت (NUMBER(6,1 ایجاد شده است. در این حالت عدد p=6 تعداد کل مجاز ارقام دهدهی است که می توانیم در ستون ذخیره کنیم که ۵ رقم آن برای پیش از نقطه و ۱ رقم آن برای پس از نقطه است چون عدد ۱۲۳.۸ کلا ۵ رقم است و همچنین یک رقم پس از نقطه قرار دارد، پس ذخیره سازی امکان پذیر است.

۲ – وقتی عدد s بزرگتر از عدد p باشد

همانطور که گفتیم عدد s تعداد ارقام بعد علامت نقطه را تعیین می کند و عدد p کل تعداد ارقام عدد (البته به جز علامت نقطه) را تعیین می کند. معمولا p بزرگتر از s است ولی این امکان وجود دارد که s بزرگتر از p باشد. در این حالت p حداکثر تعداد ارقام بعد علامت نقطه را نشان می دهد. به طور مثال عددهای ۰.۱۲۳۴، ۰.۰۰۱۲ و ۰.۰۰۱۳ را می توان جز این دسته از عددها دانست.

زمانی که می خواهیم اعداد با علامت e مانند ۰.۰۰۱۲ یعنی ۱۲ در ده به توان منفی ۴ (4- ^ 10 * 12) را ذخیره کنیم می توانیم ستونی به صورت (NUMBER(4,5 ایجاد کنیم. در این حالت حداکثر p=4 رقم می تواند بعد از علامت نقطه وجود داشته باشد.

۳ – ذخیره سازی اعداد صحیح توسط نوع NUMBER

به طور کلی از نوع NUMBER می توانیم برای ذخیره سازی عدد صفر و اعداد منفی و مثبت استفاده کنیم. برای ذخیره سازی اعداد صحیح توسط نوع NUMBER تنها باید عدد p را تعیین کنیم. بنابراین (NUMBER(4 برای ستون هایی استفاده می شود که اعداد صحصح (integer) حداکثر ۴ رقمی را در خود نگه می دارند.

همچنین می توانید مطلب توابع تک سطری در SQL – توابع عددی را نیز بخوانید.