الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

اين الخطا

مغلق
بدأه dream_land_78 في 17 ديسمبر 2002 · 6 رد · 702 مشاهدة · في قواعد بيانات Oracle
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

عندي جدول بهذا الشكل

YEAR MONTH DAY HOUR MIN NO BADGE

------ --------- --------- --------- --------- -- ---------

2 10 6 8 0 00 245454

2 10 6 14 30 00 245454

2 10 12 18 30 00 55

2 10 12 8 0 00 245454

2 10 13 14 42 00 55

2 10 13 23 30 00 55

2 10 14 8 0 00 55

2 10 14 16 0 00 245454

2 10 14 14 50 00 245454

2 10 6 13 47 00 245454

2 10 6 8 0 00 12444

2 10 6 13 0 00 12444

و عند ما كتبت التالي

select badge , to_char(to_date(day||'-'||month||'-'||year ,'dd-mm-yyyy'),'dd-mm-yyyy') from table ;

كان الناتج

BADGE TO_CHAR(TO

-------- ----------

245454 06-10-0002

245454 06-10-0002

55 12-10-0002

245454 12-10-0002

55 13-10-0002

55 13-10-0002

55 14-10-0002

245454 14-10-0002

245454 14-10-0002

245454 06-10-0002

12444 06-10-0002

12444 06-10-0002

يعني في غلط في السنة او في شكل التاريخ

فرجعت جربت

select badge , to_date(day||'-'||month||'-'||year ,'dd-mm-yyyy') from table ;

BADGE TO_DATE(DA

------- ----------

245454 06-10-0002

245454 06-10-0002

55 12-10-0002

245454 12-10-0002

55 13-10-0002

55 13-10-0002

55 14-10-0002

245454 14-10-0002

245454 14-10-0002

245454 06-10-0002

12444 06-10-0002

12444 06-10-0002

يعني كمان غلط

فشو الحل

مع الشكر

#2

السلام عليكم

ارجو ان اكون قد فهمت السؤال

اخي الفاضل ارجو ان تجرب الكود بالشكل التالي و ان شاء الله يمشي الحال

select badge , to_char(date faild,'dd-mm-yyyy') from table;

كمثال لو كان الحقل الذي يحتوي على تاريخ اسمه مثلا t_date يكون الكود كالتالي

select badge , to_char ( t_date , 'dd-mm-yyyy') from table_name

هذا هو الذي قمت بتجربته شخصيا و هو تغيير to_date الى to_char في الكود الخاص بك

اتمنى من الله ان يسير الحال معك باذن الله :D

#3

The data is confusing a little bit

please do write it again

:confused:

#4

بعد المحادثة مع احد الاعضاء البارزين جدا في المنتدى و جد هو ان اجابتي السابقة خاطئة هنا لان الاخ السائل لا يوجد لديه في ل table لا يوجد date faild و لهذا اجابتي لا تصلح هنا

لذا ارجو من الاخ السائل ان يوضح سؤاله بصورة اكبر حتى نتمكن من الاجابة عليه في اقرب وقت باذن الله

#5

البيانات كاتالي

YEAR MONTH DAY HOUR MIN BADGE

------ --------- --------- --------- ------

2 10 6 8 0 245454

2 10 6 14 30 245454

2 10 12 18 30 55

2 10 12 8 0 245454

2 10 13 14 42 55

2 10 13 23 30 55

2 10 14 8 0 55

2 10 14 16 0 245454

2 10 14 14 50 245454

2 10 6 13 47 245454

2 10 6 8 0 12444

2 10 6 13 0 12444

و اريد ان احصل على التاريخ بشكل كامل

اي ليس اليوم منفصل عن السنة و منفصل عن الشهر

اي بالشكل التالي

dd-mm-yyyy

و لكن عن كتابة التالي

select badge , to_char(to_date(day||'-'||month||'-'||year ,'dd-mm-yyyy'),'dd-mm-yyyy') from table ;

كان الناتج

BADGE TO_CHAR(TO

-------- ----------

245454 06-10-0002

245454 06-10-0002

55 12-10-0002

245454 12-10-0002

55 13-10-0002

55 13-10-0002

55 14-10-0002

245454 14-10-0002

245454 14-10-0002

245454 06-10-0002

مع ملاحظة ان السنة فيها خطا اي ان الناتج خطأ

و كذلك عند كتابة

select badge , to_date(day||'-'||month||'-'||year ,'dd-mm-yyyy') from table ;

BADGE TO_DATE(DA

------- ----------

245454 06-10-0002

245454 06-10-0002

55 12-10-0002

245454 12-10-0002

55 13-10-0002

55 13-10-0002

55 14-10-0002

245454 14-10-0002

245454 14-10-0002

245454 06-10-0002

12444 06-10-0002

12444 06-10-0002

يعني كمان غلط

فشو الحل

مع الشكر

#6

بسم الله الرحمن الرحيم

اخى السائل

يمكن تحويل الفورمات الى dd-mm-rrrr و ان شاء الله تتحل المشكلة

#7

let me guess...

your data is actually inverted,and i don't know why!!!

anyway,when i inverted it....it seems that the year field has a value of (2)

it's normal then to have a result like that,unless i'm wrong in my thoughts!!

هذا الموضوع مغلق.

مواضيع مشابهة