date_part
وظيفه
ينطبق على: التحقق من Databricks SQL Databricks Runtime
استخراج جزء من التاريخ أو الطابع الزمني أو الفاصل الزمني.
بناء الجمله
date_part(fieldStr, expr)
الحجج
fieldStr
: قيمة حرفيةSTRING
.expr
: تعبيرDATE
أوTIMESTAMP
أوINTERVAL
.
ارجاع
إذا كان fieldStr
هو 'SECOND'
، فإن DECIMAL(8, 6)
.
في جميع الحالات الأخرى، يكون INTEGER
.
القيم المدعومة للوقت source
field
أو DATE
TIMESTAMP
:
'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'
: حقل الثوان، بما في ذلك الأجزاء الكسرية
القيم المدعومة للوقت field
source
( 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