تعالج دوال التاريخ والوقت البيانات بناءً على DATE
وDATETIME
.
الدالة | مثال | الوصف | الصياغة |
---|---|---|---|
CURRENT_Date |
|
لعرض التاريخ الحالي. يتم تحديد التاريخ وفقًا للنظام الذي يتم فيه تشغيل Oracle BI. |
|
CURRENT_TIME |
|
إرجاع الوقت الحالي بعدد محدد من خانات الدقة، على سبيل المثال: HH:MM:SS.SSS وفي حالة عدم تحديد وسائط، ترجع الدالة الدقة الافتراضية. |
|
CURRENT_TIMESTAMP |
|
إرجاع التاريخ/التوقيت الحالي بعدد محدد من خانات الدقة. |
|
DAYNAME |
|
إرجاع اسم يوم من الأسبوع بتعبير تاريخ محدد. |
|
DAYOFMONTH |
|
إرجاع الرقم المطابق ليوم من الشهر بتعبير تاريخ محدد. |
|
DAYOFWEEK |
|
إرجاع رقم بين 1 و7 مطابق ليوم من الأسبوع بتعبير تاريخ محدد. على سبيل المثال، 1 يكون مطابقًا دائمًا للسبت، و2 مطابقًا للأحد، وهكذا حتى يوم الجمعة الذي يرجع 7. |
|
DAYOFYEAR |
|
إرجاع الرقم (بين 1 و366) المطابق ليوم من السنة بتعبير تاريخ محدد. |
|
DAY_OF_QUARTER |
|
إرجاع رقم (بين 1 و92) مطابق ليوم من ربع السنة بتعبير تاريخ محدد. |
|
HOUR |
|
إرجاع رقم (بين 0 و23) مطابق للساعة بتعبير وقت محدد. على سبيل المثال، يطابق الرقم 0 الساعة 12 صباحًا ويطابق الرقم 23 الساعة 11 مساءً. |
|
MINUTE |
|
إرجاع رقم (بين 0 و59) مطابق للدقيقة بتعبير وقت محدد. |
|
MONTH |
|
إرجاع رقم (بين 1 و12) مطابق للشهر بتعبير تاريخ محدد. |
|
MONTHNAME |
|
إرجاع اسم الشهر بتعبير تاريخ محدد. |
|
MONTH_OF_QUARTER |
|
إرجاع الرقم (بين 1 و3) المطابق للشهر في ربع السنة بتعبير تاريخ محدد. |
|
NOW |
|
لعرض التوقيت الحالي. والدالة |
|
QUARTER_OF_YEAR |
|
إرجاع الرقم (بين 1 و4) المطابق لربع السنة بتعبير تاريخ محدد. |
|
SECOND |
|
إرجاع الرقم (بين 0 و59) المطابق للثواني بتعبير وقت محدد. |
|
TIMESTAMPADD |
|
إضافة عدد محدد من الفواصل الزمنية إلى توقيت، وإرجاع توقيت منفرد. خيارات الفواصل الزمنية هي: SQL_TSI_SECOND وSQL_TSI_MINUTE وSQL_TSI_HOUR وSQL_TSI_DAY وSQL_TSI_WEEK, SQL_TSI_MONTH وSQL_TSI_QUARTER وSQL_TSI_YEAR |
|
TIMESTAMPDIFF |
|
لعرض العدد الإجمالي للفواصل الزمنية المحددة بين توقيتين. استخدم الفواصل الزمنية نفسها كـ TIMESTAMPADD. |
|
WEEK_OF_QUARTER |
|
إرجاع رقم (بين 1 و13) مطابق للأسبوع من ربع السنة بتعبير التاريخ المحدد. |
|
WEEK_OF_YEAR |
|
إرجاع رقم (بين 1 و53) مطابق للأسبوع من السنة بتعبير التاريخ المحدد. |
|
YEAR |
|
إرجاع السنة بتعبير التاريخ المحدد. |
|
فيما يلي بعض النصائح حول الحصول على أفضل النتائج عند استخدام دوال التاريخ في مصنفاتك لحساب الفترات المالية، وتحويل السلاسل إلى تواريخ، وإظهار التاريخ والوقت في منطقة زمنية محددة، وحساب الفروق بمرور الوقت.
حساب السنة وربع السنة والشهر المالي:
تشتمل نطاقات الموضوعات عادةً على بُعد زمني، لذا يمكنك استخدام الفترات المكونة مسبقًا مثل الربع المالي والشهر المالي والأسبوع المالي. إذا كان لديك حقل تاريخ فقط، فيمكنك حساب هذه الفترات بنفسك باستخدام دوال التاريخ.
يحسب المثال التالي ربع السنة المالي:
'FY'||cast(YEAR(TIMESTAMPADD(SQL_TSI_MONTH, 7,<date field>)) as char)||'Q'||cast(QUARTER(TIMESTAMPADD(SQL_TSI_MONTH, 7,<same date field>)) as char)
يحسب المثال التالي السنة والشهر الماليين:
'FY'||cast(YEAR(TIMESTAMPADD(SQL_TSI_MONTH, 7,<date field>)) as char)||cast(MONTHNAME(<same date field>) as char)
ملاحظات:
||
قيمة متعاقبة.استخراج (xxx(date) as char)
جزءًا من حقل التاريخ.TIMESTAMPADD
بإضافة (أو طرح) فترات من التاريخ. يستخدم هذا المثال قيمة المعلمة SQL_TSI_MONTH لإضافة أشهر.تعمل الحسابات المذكورة أعلاه بشكل جيد في الجداول، ولكن عند استخدامها في المرشحات، قد يبدو التباعد بين القيم التي تم إرجاعها غريبًا. في هذه الحالة، استخدم عملية حسابية أكثر وضوحًا ولكنها أكثر تعقيدًا استنادًا إلى هذه الأمثلة:
'FY'||evaluate ('to_char(%1,%2)'as char,(EVALUATE('add_months(%1,%2)' as date,<date field>,7)),'YY')||'-Q'||evaluate ('to_char(%1,%2)'as char,(EVALUATE('add_months(%1,%2)' as date,<same date field>,7)),'Q')
'FY'||evaluate ('to_char(%1,%2)'as char,(EVALUATE('add_months(%1,%2)' as date,<date field>,7)),'YY')||'-'||evaluate ('to_char(%1,%2)'as char,<same date field>,'MON')
تحويل سلسلة إلى تاريخ:
في مربع النص الذي يحتوي على اسم العمود الخاص بك باللون الأزرق، أدخل To_DateTime(
قبل اسم العمود، ثم أضف تنسيق التاريخ الذي تريد استخدامه بعد اسم العمود، متبوعًا بـ )
، ثم انقر على Add Stepإضافة خطوة.
.png
عند استخدام خيار "تحرير" لتكوين دالة تحويل التاريخ، فإنه يمكنك أيضًا استخدام Allow_Variable_Digits
لمعالجة قيم العمود باستخدام أعداد مكونة من رقم واحد أو اثنين، ووسائط Null_On_Error
لتجاهل الصفوف التي لا تتطابق مع النمط المطلوب. راجع أيضًا REPLACE وCAST للتعرف على طرق بديلة لمعالجة البيانات التي لا تتطابق مع النمط المطلوب.
كبديل لاستخدام To_DateTime()
، استخدم CAST() لتغيير نوع بيانات القيمة. على سبيل المثال، CAST(SalesDate AS DATE)
.
بالإضافة إلى ذلك، استخدم الخيار استبدال. في مصمم المصنف، انتقل في جزء البيانات إلى العمود الذي تريد تحويله، ثم انقر بزر الماوس الأيمن وحدد استبدال. قم بتكوين نوع الاستبدال الذي تريده، ثم انقر على إضافة خطوة.
إظهار حقل التاريخ والوقت في منطقة زمنية محددة:
استخدم دالة NEW_TIME في قاعدة البيانات بالتزامن مع EVALUATE. على سبيل المثال:
evaluate ('new_time(%1,%2,%3)' as char, "DV - Pipeline and Forecast"."Opportunity"."Last Updated Date",'GMT','AST')
تأكد من أن حقل التاريخ يتضمن مكون الوقت.
احسب الفرق بمرور الوقت:
المرشح (القياس باستخدام التاريخ <= TIMESTAMPADD(SQL_TSI_DAY,-1,CURRENT_DATE))
Measure - filter (Measure using date <= TIMESTAMPADD(SQL_TSI_DAY,-1,CURRENT_DATE))
1-(المرشح (القياس باستخدام التاريخ <= TIMESTAMPADD(SQL_TSI_DAY,-1,CURRENT_DATE))/عرض القياس كنسبة مئوية
ملاحظات:
SQL_TSI_DAY
، ومع ذلك يمكنك بدلاً من ذلك استخدام WEEK وMONTH أسبوعًا بعد أسبوع وشهرًا بعد شهر.