date_part وظيفه

ينطبق على:التحقق تم وضع علامة نعم على التحقق من Databricks SQL الذي تم وضع علامة عليه نعم Databricks Runtime

استخراج جزء من التاريخ أو الطابع الزمني أو الفاصل الزمني.

بناء الجمله

date_part(fieldStr, expr)

الحجج

  • fieldStr: قيمة حرفية STRING .
  • expr: تعبير DATEأو TIMESTAMPأو INTERVAL .

ارجاع

إذا كان fieldStr هو 'SECOND'، فإن DECIMAL(8, 6). في جميع الحالات الأخرى، يكون INTEGER.

القيم المدعومة للوقت sourcefield أو DATETIMESTAMP:

  • 'YEAR'، 'Y'، 'YEARS'، 'YR'، 'YRS': حقل السنة
  • 'YEAROFWEEK': سنة ترقيم أسبوع ISO 8601 التي يقع فيها التاريخ والوقت. على سبيل المثال، 2005-01-02 هو جزء من الأسبوع 53 من السنة 2004، وبالتالي فإن النتيجة هي 2004
  • 'QUARTER'، 'QTR': الربع (1 - 4) من السنة التي يقع فيها التاريخ والوقت
  • 'MONTH'، 'MON'، 'MONS'، 'MONTHS': حقل الشهر (1 - 12)
  • 'WEEK'، ، 'W''WEEKS': عدد ISO 8601 المستندة إلى أسبوع من الأسبوع. يعتبر الأسبوع يبدأ يوم الاثنين والأسبوع 1 هو الأسبوع الأول مع >3 أيام. وفي نظام ترقيم أسابيع ISO، يمكن أن تكون تواريخ أوائل كانون الثاني/يناير جزءا من الأسبوع 52 أو 53 من السنة السابقة، وأن تكون تواريخ أواخر كانون الأول/ديسمبر جزءا من الأسبوع الأول من السنة التالية. على سبيل المثال، 2005-01-02 هو جزء من الأسبوع الثالث والخمسين من العام 2004، في حين أن 2012-12-31 هو جزء من الأسبوع الأول من عام 2013
  • 'DAY'، 'D'، 'DAYS': حقل يوم الشهر (1 - 31)
  • 'DAYOFWEEK'، 'DOW': يوم الأسبوع للتاريخ والوقت من الأحد(1) إلى السبت(7)
  • 'DAYOFWEEK_ISO'، 'DOW_ISO': يوم يستند إلى ISO 8601 من الأسبوع للتاريخ والوقت من الاثنين(1) إلى الأحد(7)
  • 'DOY': يوم السنة (1 - 365/366)
  • 'HOUR'، 'H'، 'HOURS'، 'HR'، 'HRS': حقل الساعة (0 - 23)
  • 'MINUTE'، 'M'، 'MIN'، 'MINS'، 'MINUTES': حقل الدقائق (0 - 59)
  • 'SECOND'، 'S'، 'SEC'، 'SECONDS'، 'SECS': حقل الثوان، بما في ذلك الأجزاء الكسرية

القيم المدعومة للوقت fieldsource ( INTERVAL غير حساسة لحالة الأحرف):

  • 'YEAR'، 'Y'، 'YEARS'، 'YR'، 'YRS': إجمالي الأشهر / 12
  • 'MONTH'، 'MON'، 'MONS'، 'MONTHS': إجمالي الأشهر ٪ 12
  • 'DAY'، 'D'، 'DAYS': جزء الأيام من الفاصل الزمني
  • 'HOUR'، 'H'، 'HOURS'، 'HR'، 'HRS': عدد الساعات التي تحتويها الميكرو ثانية
  • 'MINUTE'، 'M'، 'MIN'، 'MINS'، 'MINUTES': كم دقيقة متبقية بعد أخذ ساعات من الميكرو ثانية
  • 'SECOND'، 'S'، 'SEC'، 'SECONDS'، 'SECS': كم ثانية مع كسور متبقية بعد أخذ ساعات ودقائق من ميكرو ثانية

date_part الدالة هي مرادف لدالة الاستخراج القياسية SQL.

على سبيل المثال date_part('year', CURRENT_DATE) يعادل extract(YEAR FROM CURRENT_DATE)

امثله

> SELECT date_part('YEAR', TIMESTAMP'2019-08-12 01:00:00.123456');
 2019

> SELECT date_part('Week', TIMESTAMP'2019-08-12 01:00:00.123456');
 33

> SELECT date_part('day', DATE'2019-08-12');
 224

> SELECT date_part('SECONDS', TIMESTAMP'2019-10-01 00:00:01.000001');
 1.000001

> SELECT date_part('Months', INTERVAL '2-11' YEAR TO MONTH);
 11

> SELECT date_part('seconds', INTERVAL '5:00:30.001' HOUR TO SECOND);
 30.001000