لحساب العمر من خلال تاريخ الميلاد توجد عدة طرق لذلك من خلال الكود بالصفحة
او من خلال جملة الاستعلام نفسها وسوف نأخذ هذه الطريقة
علما بان الطريقتين تعتمد علي جمع وضرب عادي للسنين كما يلي
وهذا يجلب العمر للشخص
FLOOR((CAST(GETDATE() AS INTEGER) - CAST(birthdate AS INTEGER)) / 365.25) AS Age
الان اسم الحقل الذي سوف تظهره هو Age
وهي عملية حسابية لحساب العمر اعتمدادا علي
GETDATE() وهي تأتي بتاريخ الوقت الحالي
Birthdate هو حقل تاريخ الميلاد بالجدول
وطبعا يتم احتساب ذلك من خلال عدد ايام السنة الميلادية
مثال عملي لدي تاريخ ميلادي وهو 1983 كيف سيتم احتساب العمر بناء علي ذلك من خلال حقل التاريخ في جدول المستخدمين
select user_name,birthdate,FLOOR((CAST(GETDATE() AS INTEGER) - CAST( users.birthdate AS INTEGER)) / 365.25) AS Age
الناتج سيكون كالاتي
User_name Birthdate Age
--------------------------------------- ---------------- ----------------
Hisham Bakr 1983 32
(1 row(s) affected)
مثال اخر من خلال بارمتر سوف احجز باميتر من نوع تاريخ وسوف اضع به تاريخ ميلادي
DECLARE @birthdate datetime
SET @birthdate =''1983''
select FLOOR((CAST(GETDATE() AS INTEGER) - CAST( @birthdate AS INTEGER)) / 365.25) AS Age
الناتج سيكون
الناتج سيكون كالاتي
Age
--------
32
(1 row(s) affected)
اذن الطريقة سهلة لجلب سن او عمر الشخص اعتمادا علي تاريخ الميلاد