الدوال المدمجة

تعرض هذه المقالة ارتباطات إلى وأوصاف عوامل التشغيل المضمنة، ووظائف السلاسل والأنواع الثنائية، والأرقام الرقمية، والتجمعات، والنوافذ، الصفائف، والخرائط، والتواريخ والطوابع الزمنية، والصب، وبيانات CSV، وبيانات JSON، والتلاعب XPath، والوظائف المتنوعة.

انظر أيضا:

عوامل التشغيل والمسند

للحصول على معلومات حول كيفية تحليل عوامل التشغيل فيما يتعلق ببعضها البعض، راجع الأسبقية عامل التشغيل.

عامل تشغيل بناء الجملة الوصف
& expr1 & expr2 إرجاع و BITWISE و expr1expr2 .
و expr1 and expr2 إرجاع AND المنطقي و expr1expr2 .
* multiplier * multiplicand يتم ضرب العائدات multiplier في multiplicand .
!= expr1 != expr2 إرجاع true إذا expr1 لم يكن expr2 مساويا أو غير false ذلك.
! !expr إرجاع NOT المنطقية تعبير منطقية.
بين expr1 [not] between expr2 and expr2 اختبار ما إذا كان expr1 أكبر أو يساوي من أو أقل من أو يساوي expr2expr3 .
[ ] arrayExpr [ indexExpr ] إرجاع indexExpr العنصر الثاني من ARRAY arrayExpr
[ ] mapExpr [ keyExpr ] إرجاع القيمة في keyExpr MAP mapExpr
^ expr1 ^ expr2 إرجاع خاص bitwise OR (XOR) من expr1 و expr2 .
: jsonStr : jsonPath إرجاع الحقول المستخرجة من jsonStr .
:: expr :: type تحويل القيمة expr إلى نوع البيانات الهدف type ."
div divisor div dividend إرجاع الجزء المتكامل من قسمة divisor على dividend .
== expr1 == expr2 إرجاع true إذا تساوي أو غير expr1expr2false ذلك."
= expr1 = expr2 إرجاع true إذا تساوي أو غير expr1expr2false ذلك."
= expr1 >= expr2 إرجاع true إذا كان أكبر من أو يساوي ، أو غير expr1expr2false ذلك.
> expr1 > expr2 إرجاع true إذا كان أكبر من أو غير expr1expr2false ذلك.
موجود exists(query) إرجاع صواب إذا query كان إرجاع صف واحد على الأقل أو false خلاف ذلك.
مثل str [not] ilike (pattern[ESCAPE escape]) إرجاع true إذا str تطابق pattern مع عدم escape تحسس حالة الأحرف.
مثل str [not] ilike {ANY|SOME|ALL}([pattern[, ...]]) إرجاع true إذا str تطابق أي/كافة الأنماط غير حساسة لحالة الأحرف.
في elem [not] in (expr1[, ...]) إرجاع true إذا كان يساوي أي elemexprN .
في elem [not] in (query) إرجاع true إذا elem تساوى أي صف في query .
متميز expr1 is [not] distinct from expr2 اختبار ما إذا كانت الوسيطات لها قيم مختلفة حيث تعتبر NULLs قيم قابلة للمقارنة.
غير صحيح expr is [not] false اختبارات ما إذا كان exprfalse .
هو null expr is [not] null إرجاع true إذا كان expr (لا) NULL .
صحيح expr is [not] true اختبارات ما إذا كان exprtrue .
مثل str [not] like (pattern[ESCAPE escape]) إرجاع true إذا str تطابق pattern مع escape .
مثل str [not] like {ANY|SOME|ALL}([pattern[, ...]]) إرجاع true إذا str تطابق أي/كافة الأنماط.
=> expr1 <=> expr2 إرجاع نفس النتيجة EQUAL(=) الخاصة بالمعاملات غير الخالية، ولكن ترجع true إذا كان كلاهما ، إذا كان NULLfalse أحدهما NULL .
<> expr1 <= expr2 إرجاع true إذا لم يكن يساوي أو غير expr1expr2false ذلك.
<> expr1 <> expr2 إرجاع true إذا لم يكن يساوي أو غير expr1expr2false ذلك.
< expr1 < expr2 إرجاع true إذا كان أقل من أو يساوي ، أو غير expr1expr2false ذلك.
- expr1 - expr2 إرجاع الطرح expr2 من expr1 .
not not expr إرجاع NOT المنطقية تعبير منطقية.
% dividend % divisor إرجاع الباقي بعد dividend / divisor .
|| expr1 || expr2 إرجاع سلسلة و expr1expr2 .
| expr1 | expr2 إرجاع bitwise OR من expr1 و expr2 .
+ expr1 + expr2 إرجاع مجموع expr1 و expr2 .
ريجب str [not] regexp regex إرجاع true إذا strregex تطابقت.
regexp_like str [not] regexp_like regex إرجاع true إذا strregex تطابقت.
rlike str [not] rlike regex إرجاع true إذا strregex تطابقت.
/ dividend / divisor إرجاع dividend مقسوما على divisor .
~ ~ expr إرجاع البت NOT من expr .

أسبقية عامل التشغيل

الأسبقية عامل تشغيل
1 :, ::, [ ]
2 -(غير منظمة) + ، (unary) ، ~
3 *, /, %, div
4 +, -, ||
5 &
6 ^
7 |
8 =, ==, <=>, <>, !=, <, <=, >, >=
9 not, exists
10 between, in, rlike, regexp, ilike, like, is [not] [NULL, true, false], is [not] distinct from
11 and
12 or

سلسلة ودالات ثنائية

الوظيفة الوصف
|| expr1 إكسبر2 إرجاع سلسلة و expr1expr2 .
ascii(str) إرجاع نقطة الرمز ASCII للحرف الأول من str .
base64(expr) تحويل expr إلى سلسلة 64 الأساسية.
بن (expr) إرجاع التمثيل الثنائي ل expr .
ثنائي(expr) يلقي قيمة expr إلى ثنائي.
bit_length(expr) إرجاع طول البتات لبيانات السلسلة أو عدد البتات من البيانات الثنائية.
btrim(st [, تريمستر]) إرجاع str مع إزالة الأحرف الواهية والمتخلفة.
char(expr) إرجاع الحرف عند نقطة التعليمات البرمجية UTF-16 المتوفرة.
char_length(expr) إرجاع طول حرف بيانات السلسلة أو عدد وحدات البايت من البيانات الثنائية.
character_length(expr) إرجاع طول حرف بيانات السلسلة أو عدد وحدات البايت من البيانات الثنائية.
charindex(السلسلة الفرعية، str[، pos]) إرجاع موضع أول تواجد substr لوظيفة str بعد موضع pos .
chr(expr) إرجاع الحرف عند نقطة التعليمات البرمجية UTF-16 المتوفرة.
concat(expr1, expr2[, ...]) إرجاع سلسلة الوسيطات.
concat_ws(sep[, expr1[, ...]]) إرجاع سلاسل سلسلة السلاسل مفصولة ب sep .
crc32 (expr) إرجاع قيمة فحص التكرار الدوري ل expr .
فك التشفير (expr، charSet) يترجم ثنائي expr إلى سلسلة باستخدام ترميز مجموعة الأحرف charSet .
ترميز(expr, charSet) إرجاع التمثيل الثنائي لسلسلة باستخدام charSet ترميز الأحرف.
find_in_set(searchExpr، المصدروإكسبر) إرجاع موضع سلسلة ضمن قائمة سلاسل مفصولة بفاصلة.
format_number(expr، مقياس) تنسيقات expr مثل #,###,###.## ، مدورة إلى scale منازل عشرية.
format_number(expr, fmt) تنسيقات expr مثل fmt .
format_string(strfmt[, obj1 [,...]]) إرجاع سلسلة منسقة من سلاسل تنسيق نمط printf.
هيكس (expr) تحويل expr إلى سداسي عشري.
str ilike (نمط [الهروب الهروب]) إرجاع true إذا str تطابق مع حالة عدم patternescape تحسس.
إينتكاب (expr) إرجاع expr بالحرف الأول من كل كلمة بالأحرف الكبيرة.
instr(str، السلسلة الفرعية) إرجاع الفهرس (المستندة إلى 1) لأول تواجد substr في str .
lcase (expr) إرجاع expr مع تغيير كافة الأحرف إلى أحرف صغيرة.
اليسار (str، لين) إرجاع الأحرف في أقصى اليسار len من str .
الطول(expr) إرجاع طول حرف بيانات السلسلة أو عدد وحدات البايت من البيانات الثنائية.
ليفينشتين (str1، str2) إرجاع مسافة ليفينشتين بين السلاسل str1 و str2 .
str مثل (نمط [الهروب الهروب]) إرجاع true إذا str تطابق pattern مع escape .
موقع(سلسلة فرعية، str[، pos]) إرجاع موضع أول تواجد substr لوظيفة str بعد موضع pos .
أقل(expr) إرجاع expr مع تغيير كافة الأحرف إلى أحرف صغيرة.
lpad(str, len[, لوح]) إرجاع str ، مبطنة إلى اليسار pad بطول len .
ltrim([تريمستر]، str) إرجاع str مع الأحرف الرائدة داخل trimStr إزالتها.
md5 (expr) إرجاع المجموع الاختباري MD5 128 بت expr من كسلسلة هيكس.
octet_length(expr) إرجاع طول البايت لبيانات السلسلة أو عدد وحدات البايت للبيانات الثنائية.
تراكب(إدخال وضع استبدال من نقطة البيع [للن]) يستبدل input مع replace أن يبدأ في poslen وطول.
parse_url(رابط، جزءتوإكستراكت [، مفتاح]) مقتطفات جزء من url .
الموضع(السلسلة الفرعية، str[، pos]) إرجاع موضع أول تواجد substr لوظيفة str بعد موضع pos .
الموضع(تحت المستوى IN str) إرجاع موضع أول تواجد substr لوظيفة str بعد موضع pos .
printf(strfmt[, obj1 [, ...]]) إرجاع سلسلة منسقة من سلاسل تنسيق نمط printf.
str ريجإكسب ريجيس إرجاع true إذا strregex تطابقت.
str regexp_like ريجس إرجاع true إذا strregex تطابقت.
regexp_extract(str, regexp[, idx]) استخراج السلسلة الأولى في str يطابق regexp التعبير ويتوافق مع فهرس regex المجموعة.
regexp_extract_all(str, regexp[, idx]) استخراج كافة السلاسل str في يطابق التعبير regexp ويتوافق مع فهرس regex المجموعة.
regexp_replace(str, regexp, rep[, الموقف]) يستبدل كافة السلاسل الفرعية str لتلك المطابقة regexp مع rep .
تكرار(expr, n) إرجاع السلسلة التي تكرر exprn الأوقات.
استبدال(str, regexp, rep[, موضع]) يستبدل كافة السلاسل الفرعية str لتلك المطابقة regexp مع rep .
عكس (expr) إرجاع سلسلة معكوسة أو صفيف بترتيب عكسي للعناصر.
الحق (str، لين) إرجاع الأحرف في أقصى اليمين len من السلسلة str .
str rlike ريجيكس إرجاع true إذا strregex تطابقت.
rpad(str, len[, لوح]) إرجاع str ، مبطنة pad يمينا بطول len .
rtrim([trimStr،] str) إرجاع str مع إزالة الأحرف الزائدة.
الجمل (str [, لانغ, بلد]) تنقسم str إلى صفيف من الكلمات.
sha(expr) إرجاع قيمة تجزئة sha1 كسلسلة سداسية من expr .
sha1 (expr) إرجاع قيمة تجزئة sha1 كسلسلة سداسية من expr .
sha2 (expr، بتلنغث) إرجاع المجموع الاختباري لعائلة SHA-2 كسلسلة سداسية من expr .
ساونديكس (expr) إرجاع التعليمات البرمجية للسلسلة.
الفضاء (ن) إرجاع سلسلة تتكون من n مسافات.
تقسيم (str، regex [، حد]) تنقسم str حول التكرارات التي تطابق regex وإرجاع صفيف بطول على الأكثر limit .
سلسلة (expr) تحويل القيمة expr إلى STRING.
السلسلة الفرعية (expr، pos[، len]) إرجاع السلسلة الفرعية expr من ذلك يبدأ عند و هو من طول poslen .
السلسلة الفرعية (expr FROM pos[ للن]) إرجاع السلسلة الفرعية expr من ذلك يبدأ عند و هو من طول poslen .
السلسلة الفرعية (expr، pos [، len]) إرجاع السلسلة الفرعية expr من ذلك يبدأ عند و هو من طول poslen .
السلسلة الفرعية (expr FROM pos[ للن]) إرجاع السلسلة الفرعية expr من ذلك يبدأ عند و هو من طول poslen .
substring_index(expr، ديليم، العد) إرجاع السلسلة الفرعية expr قبل count حدوث المحدد delim .
ترجمة(expr، من، إلى) إرجاع expr حيث تم استبدال كافة الأحرف الموجودة from في to .
تقليم([كلا | | الرائدة زائدة] [trimStr] من] str) اقتطاع الأحرف من سلسلة.
ucase (expr) إرجاع expr مع تغيير كافة الأحرف إلى أحرف كبيرة.
unbase64(expr) إرجاع سلسلة base64 فك ترميز ثنائي.
أونهيكس (expr) تحويل سداسي عشري expr إلى ثنائي.
العلوي (expr) إرجاع expr مع تغيير كافة الأحرف إلى أحرف كبيرة.

دالات رقمية رقمية

الوظيفة الوصف
~ إكسبر إرجاع البت NOT من expr .
أرباح الأسهم / المقسوم إرجاع dividend مقسوما على divisor .
| expr1 إكسبر2 إرجاع bitwise OR من expr1 و expr2 .
- إكسبر إرجاع القيمة المنفية ل expr .
expr1 - expr2 إرجاع الطرح expr2 من expr1 .
+ إكسبر إرجاع قيمة expr .
expr1 + expr2 إرجاع مجموع expr1 و expr2 .
توزيع الأرباح ٪ المقسوم إرجاع الباقي بعد dividend / divisor .
expr1 ^ expr2 إرجاع خاص bitwise OR (XOR) من expr1 و expr2 .
expr1 إكسبر2 إرجاع و BITWISE و expr1expr2 .
مضاعف * ضرب يتم ضرب العائدات multiplier في multiplicand .
القيمة المطلقة (expr) إرجاع القيمة المطلقة للقيمة الرقمية في expr .
أكوس (expr) إرجاع جيب الكوس العكسي (arccosine) ل expr .
أكوش (expr) إرجاع جيب الانسداد العكسي الزائد ل expr .
أسين (expr) إرجاع جيب المعكوس (قوسين) من expr .
أسينه (expr) إرجاع جيب المغالي العكسي ل expr .
atan(expr) إرجاع المماس المعكوس (القوس) ل expr .
atan2(exprY, exprX) إرجاع الزاوية بالتقدير الدائري بين المحور x الموجب لطائرة والنقطة المحددة بواسطة الإحداثيات ( exprX ، exprY ).
atanh(expr) إرجاع معكوس المماس الزائد ل expr .
bigint (expr) يلقي القيمة expr إلى BIGINT.
bit_count(expr) إرجاع عدد البتات التي تم تعيينها في الوسيطة.
bit_get(expr, pos) إرجاع قيمة بت في تمثيل ثنائي رقمي متكامل.
bit_reverse(expr) إرجاع القيمة التي تم الحصول عليها عن طريق عكس ترتيب البتات في الوسيطة.
bround(expr[, الهدفسكال]) إرجاع تقريب expr باستخدام HALF_EVEN وضع التقريب.
cbrt(expr) إرجاع الجذر المكعب ل expr .
ceil(expr) إرجاع أصغر رقم تكاملي لا يكون أصغر من expr .
سقف (expr) إرجاع أصغر رقم تكاملي لا يكون أصغر من expr .
conv(num, منالقاعدة, إلى قاعدة) تحويل num من fromBase إلى toBase .
كوس (expr) إرجاع جيب السطان ل expr .
كوش (expr) إرجاع جيب الانسداد الزائد ل expr .
سرير (expr) إرجاع كود التمام ل expr .
عشري(expr) تحويل القيمة expr إلى عشري.
درجات (expr) تحويل راديان إلى درجات.
توزيع أرباح القسمة إرجاع الجزء المتكامل من قسمة divisor على dividend .
مزدوج (expr) يلقي القيمة expr إلى مزدوجة.
e() إرجاع ثابت e .
إكسب (إكسبر) يعود e إلى قوة expr .
expm1 (expr) إرجاع exp(expr) - 1 .
عاملي (expr) إرجاع عامل expr .
تعويم (expr) تحويل القيمة expr إلى FLOAT.
الكلمة (expr) إرجاع أصغر رقم تكامل لا يزيد عن expr .
getbit (expr، نقطة البيع) إرجاع قيمة بت في تمثيل ثنائي رقمي متكامل.
hypot(expr1, expr2) إرجاع sqrt(expr1 * expr1 + expr2 * expr2) .
int(expr) تحويل القيمة expr إلى INTEGER.
زنان (expr) إرجاع true إذا كان exprNaN .
ln (expr) إرجاع اللوغاريتم الطبيعي e (الأساسي) ل expr .
سجل([قاعدة،] expr) إرجاع لوغارتم expr مع base .
log1p (expr) إرجاع log(1 + expr) .
log2 (expr) إرجاع لوغارتم expr مع قاعدة 2 .
log10(expr) إرجاع لوغارتم expr مع قاعدة 10 .
mod(أرباح الأسهم، القسمة) إرجاع الباقي بعد dividend / divisor .
نانفل (expr1، expr2) إرجاع expr1 إذا لم يكن NaN كذلك، أو expr2 غير ذلك.
سالب (expr) إرجاع القيمة المنفية ل expr .
pi() إرجاع pi.
pmod (أرباح الأسهم، المقسوم) إرجاع الباقي الموجب بعد dividend / divisor .
موجب (expr) إرجاع قيمة expr .
أسير حرب (expr1، expr2) يرفع expr1 إلى قوة expr2 .
الطاقة(expr1, expr2) يرفع expr1 إلى قوة expr2 .
راديان (expr) تحويل expr بالدرجات إلى راديان.
راند([البذور]) إرجاع قيمة عشوائية بين 0 و1.
راند ([البذور]) إرجاع قيمة عشوائية من توزيع عادي قياسي.
عشوائي([البذور]) إرجاع قيمة عشوائية بين 0 و1.
رينت (expr) إرجاع expr تقريب إلى رقم صحيح ك DOUBLE.
جولة(expr[,مقياس الهدف]) إرجاع تقريب expr باستخدام HALF_UP وضع التقريب.
تحويل (expr، ن) إرجاع اليسار بتا تحولت n بت.
shiftright(expr, n) إرجاع رقم تكامل موقع بشكل بتي تم تحويله بواسطة n البتات.
shiftrightunsigned(expr, n) إرجاع رقم تكامل موقع غير موقع بشكل بتي تم تحويله بواسطة n البتات.
التوقيع (expr) إرجاع -1.0 أو 0.0 أو 1.0 كما expr هو سالب أو 0 أو موجب.
sinh(expr) إرجاع جيب المبالغة في expr .
صغيرة (expr) يلقي القيمة expr إلى SMALLINT.
sqrt(expr) إرجاع الجذر التربيعي ل expr .
تان (expr) إرجاع ظل expr .
تانه (expr) إرجاع الظل الزائد ل expr .
tinyint (expr) يلقي expr إلى TINYINT.
try_add(expr1, expr2) إرجاع مجموع expr1 و expr2 أو NULL في حالة الخطأ.
try_divide(أرباح الأسهم، القسمة) إرجاع dividend مقسوما على divisor ، أو NULL إذا كان divisor 0.

الدوال التجميعية

الوظيفة الوصف
أي (expr) إرجاع true إذا كانت قيمة واحدة على الأقل expr في المجموعة صحيحة.
approx_count_distinct(expr[,الأقارب]) إرجاع العدد المقدر للقيم المميزة expr داخل المجموعة.
approx_percentile(col,النسبة المئوية[,الدقة]) إرجاع المئين التقريبي expr للمجموعة.
متوسط (expr) إرجاع المتوسط المحسوب من قيم مجموعة.
bit_and(expr) إرجاع بتا من AND كافة قيم الإدخال في المجموعة.
bit_or(expr) إرجاع بتا من OR كافة قيم الإدخال في المجموعة.
bit_xor(expr) إرجاع بتا من XOR كافة قيم الإدخال في المجموعة.
bool_and(expr) إرجاع true إذا كانت كافة القيم في expr true داخل المجموعة.
bool_or(expr) إرجاع true إذا كانت قيمة واحدة على الأقل في expr true داخل المجموعة.
collect_list(expr) إرجاع صفيف يتكون من كافة القيم expr داخل المجموعة.
collect_set(expr) إرجاع صفيف يتكون من كافة القيم الفريدة expr داخل المجموعة.
corr(expr1,expr2) إرجاع معامل Pearson للارتباط بين مجموعة من أزواج الأرقام.
العد(*) إرجاع العدد الإجمالي للصفوف التي تم استردادها في مجموعة، بما في ذلك الصفوف التي تحتوي على فارغة.
العد (expr[, ...]) إرجاع عدد الصفوف في مجموعة تكون كافة التعبيرات المتوفرة لها غير خالية.
count_if(expr) إرجاع عدد القيم الحقيقية للمجموعة في expr .
count_min_sketch (expr، إبسيلون، الثقة، البذور) إرجاع رسم تخطيطي لعدد التوابع لكافة القيم في المجموعة expr مع epsilon و confidenceseed .
covar_pop(expr1,expr2) إرجاع التباين المشترك بين السكان لأزواج الأرقام في مجموعة.
covar_samp(expr1,expr2) إرجاع التباين المشترك العينة لأزواج الأرقام في مجموعة.
كل (expr) إرجاع صواب إذا كانت كافة قيم expr المجموعة صحيحة.
أولا(expr[,تجاهلالناس]) إرجاع القيمة الأولى expr لمجموعة من الصفوف.
first_value(expr[,ignoreNull]) إرجاع القيمة الأولى expr لمجموعة من الصفوف.
كورتوسيس (expr) إرجاع قيمة الت كورتوسيس المحسوبة من قيم مجموعة.
الأخير(expr[,تجاهلنول]) إرجاع القيمة الأخيرة expr لمجموعة الصفوف.
last_value(expr[,ignoreNull]) إرجاع القيمة الأخيرة expr لمجموعة الصفوف.
الحد الأقصى (expr) إرجاع القيمة القصوى expr في مجموعة.
max_by(expr1, expr2) إرجاع قيمة expr1 المقترنة بالقيمة القصوى expr2 في مجموعة.
متوسط (expr) إرجاع المتوسط المحسوب من قيم مجموعة.
دقيقة (expr) إرجاع القيمة الدنيا expr في مجموعة.
min_by(expr1, expr2) إرجاع قيمة expr1 المقترنة بالقيمة الدنيا expr2 في مجموعة.
المئين (expr، النسبة المئوية [،التردد]) إرجاع القيمة المئوية expr الدقيقة في المحدد percentage .
percentile_approx(expr,النسبة المئوية[,الدقة]) إرجاع المئين التقريبي expr للمجموعة.
الانحراف (expr) إرجاع قيمة الانحراف المحسوبة من قيم مجموعة.
بعض (expr) إرجاع القيمة true إذا كانت قيمة واحدة على الأقل expr في مجموعة ما هي true .
std(expr) إرجاع نموذج الانحراف المعياري المحسوب من القيم داخل المجموعة.
ستديف (expr) إرجاع نموذج الانحراف المعياري المحسوب من القيم داخل المجموعة.
stddev_pop(expr) إرجاع الانحراف المعياري للمحتوى المحسوب من قيم مجموعة.
stddev_samp(expr) إرجاع نموذج الانحراف المعياري المحسوب من قيم مجموعة.
المجموع (expr) إرجاع المبلغ المحسوب من قيم مجموعة.
var_pop(expr) إرجاع تباين السكان المحسوب من قيم مجموعة.
var_samp(expr) إرجاع عينة التباين المحسوبة من قيم مجموعة.
التباين(expr) إرجاع عينة التباين المحسوبة من قيم مجموعة.

وظائف إطار الترتيب

الوظيفة الوصف
dense_rank() إرجاع رتبة قيمة مقارنة بكافة القيم الموجودة في القسم.
ntile(n) يقسم الصفوف لكل قسم نافذة إلى دلاء ن تتراوح بين 1 إلى على الأكثر n .
percent_rank() يحسب ترتيب النسبة المئوية لقيمة داخل القسم.
رتبة() إرجاع رتبة قيمة مقارنة بكافة القيم الموجودة في القسم.
row_number() تعيين رقم تسلسلي فريد لكل صف، بدءا من صف واحد، وفقا لترتيب الصفوف داخل قسم النافذة.

وظائف النافذة التحليلية

الوظيفة الوصف
cume_dist() إرجاع موضع قيمة نسبة إلى كافة القيم الموجودة في القسم.
تأخر (expr[، إزاحة [، افتراضي]] إرجاع قيمة expr من صف سابق داخل القسم.
الرصاص (expr[، إزاحة [، افتراضي]) إرجاع قيمة expr الصف اللاحق داخل القسم.
nth_value(expr، أو الإزاحة[، تجاهلالأصوات]) إرجاع قيمة expr في محدد offset في الإطار.

دوال الصفائف

الوظيفة الوصف
صفيفExpr[indexExpr] إرجاع العنصر في موضع indexExpr ARRAY arrayExpr .
تجميع(expr,بدء,دمج[,إنهاء]) تجميع العناصر في صفيف باستخدام مجمع مخصص.
صفيف([expr [, ...]]) إرجاع صفيف مع العناصر الموجودة في expr .
array_contains(صفيف، قيمة) إرجاع true إذا array كان يحتوي على value .
array_distinct(صفيف) إزالة القيم المكررة من array .
array_except(صفيف1، صفيف2) إرجاع صفيف العناصر في array1 ولكن ليس في array2 .
array_intersect(صفيف1, array2) إرجاع صفيف العناصر في تقاطع array1 و array2 .
array_join(صفيف، محدد[، nullReplacement]) سلسلة عناصر array .
array_max(صفيف) إرجاع القيمة القصوى في array .
array_min(صفيف) إرجاع القيمة الدنيا في array .
array_position(صفيف,عنصر) إرجاع موضع أول تواجد في elementarray .
array_remove(صفيف،عنصر) إزالة كافة التواجدات element من array .
array_repeat(عنصر، عدد) إرجاع صفيف يحتوي على elementcount أوقات.
array_sort(صفيف, func) arrayيتم فرز الإرجاع وفقا ل func .
array_union(صفيف1, array2) إرجاع صفيف العناصر في اتحاد array1array2 التكرارات وبدونها.
arrays_overlap(صفيف1، صفيف2) إرجاع true إذا كان تقاطع array1 و array2 غير فارغ.
arrays_zip(صفيف1 [, ...]) إرجاع صفيف مدمج من البنيات التي يحتوي فيها البنية nth على كافة القيم Nth من صفائف الإدخال.
الكاردينالية (expr) إرجاع حجم expr .
concat(expr1, expr2 [, ...]) إرجاع سلسلة الوسيطات.
element_at(صفيفوصفيف، فهرس) إرجاع عنصر في arrayExprindex .
موجود (expr، قبل) إرجاع true إذا كان pred صحيحا لأي عنصر في expr .
تنفجر (expr) إرجاع الصفوف بواسطة un-nesting expr .
explode_outer(expr) إرجاع الصفوف بواسطة un-nesting expr باستخدام دلالات خارجية.
فلتر (expr، func) تصفية الصفيف expr باستخدام الدالة func .
تسطيح(صفيفOfArrays) تحويل صفيف صفائف إلى صفيف مفرد.
forall (expr، بريدفونك) يختبر ما إذا كان predFunc يحتفظ لكافة العناصر في الصفيف.
مضمن (expr) تنفجر مجموعة من الهياكل في جدول.
inline_outer(expr) ينفجر مجموعة من الهياكل في جدول مع دلالات الخارجي.
بوزإكسبلود (expr) إرجاع الصفوف بواسطة إلغاء تداخل الصفيف مع ترقيم المواضع.
posexplode_outer(expr) إرجاع الصفوف بواسطة إلغاء تداخل الصفيف مع ترقيم المواضع باستخدام OUTER الدلالات.
reduce(expr,بدء,دمج[,إنهاء]) تجميع العناصر في صفيف باستخدام مجمع مخصص.
عكس(صفيف) إرجاع سلسلة معكوسة أو صفيف بترتيب عكسي للعناصر.
تسلسل(بداية,إيقاف,خطوة) ينشئ صفيف عناصر من start إلى stop (شامل)، مع زيادة بمقدار step .
خلط ورق اللعب(صفيف) إرجاع تبديل عشوائي للصفيف في expr .
الحجم (expr) إرجاع كاردينال expr .
شريحة (expr، بداية، طول) إرجاع مجموعة فرعية من صفيف.
sort_array(صفيف[,تصاعدياOrder]) إرجاع الصفيف expr بترتيب مفروز.
تحويل (expr، func) تحويل العناصر في صفيف expr باستخدام الدالة func .
zip_with(expr1، expr2، func) دمج الصفائف في expr1 و expr2 ، عنصر-wise، في صفيف مفرد باستخدام func .

وظائف الخريطة

الوظيفة الوصف
خريطةExpr [مفتاحيوإكسبر] إرجاع القيمة في keyExpr MAP mapExpr .
الكاردينالية (expr) إرجاع حجم expr .
element_at(خريطةومفتاح) إرجاع قيمة mapExpr ل key .
تنفجر (expr) إرجاع الصفوف بواسطة un-nesting expr .
explode_outer(expr) إرجاع الصفوف بواسطة un-nesting expr باستخدام دلالات خارجية.
خريطة([{key1، value1}[، ...]]) إنشاء خريطة مع أزواج قيمة المفتاح المحددة.
map_concat([expr1 [، ...]]) إرجاع اتحاد كافة expr تعبيرات الخريطة.
map_entries(خريطة) إرجاع صفيف غير منظم لكافة الإدخالات في map .
map_filter (expr، func) تصفية الإدخالات في الخريطة expr باستخدام الدالة func .
map_from_arrays(مفاتيح، قيم) إنشاء خريطة مع زوج من keysvalues الصفائف و.
map_from_entries(expr) إنشاء خريطة تم إنشاؤها من صفيف الإدخالات المحدد.
map_keys(خريطة) إرجاع صفيف غير منظم يحتوي على مفاتيح map .
map_values(خريطة) إرجاع صفيف غير منظم يحتوي على قيم map .
map_zip_with(خريطة1، map2، func) دمج map1map2 وإلى خريطة واحدة.
الحجم (expr) إرجاع كاردينال expr .
transform_keys (expr، func) تحويل المفاتيح في الخريطة expr باستخدام الدالة func .
transform_values (expr، func) تحويل القيم في الخريطة expr باستخدام الدالة func .

وظائف التاريخ والسم الزمني والفاصل الزمني

للحصول على معلومات حول تنسيقات التاريخ و الطابع الزمني، راجع أنماط وقت التاريخ.

الوظيفة الوصف
add_months(تاريخ البدء، numMonths) إرجاع التاريخ الذي numMonths يليه startDate .
current_date() إرجاع التاريخ الحالي عند بداية تقييم الاستعلام.
current_timestamp() إرجاع الطابع الزمني الحالي في بداية تقييم الاستعلام.
current_timezone() إرجاع المنطقة الزمنية المحلية لجلسة العمل الحالية.
تاريخ(expr) تحويل القيمة expr إلى تاريخ.
date_add(تاريخ البدء، أيام الميلاد) إرجاع التاريخ numDays بعد startDate .
date_format(expr,fmt) تحويل الطابع الزمني إلى سلسلة في التنسيق fmt .
date_from_unix_date(أيام) إنشاء تاريخ من عدد الأيام منذ 1970-01-01 .
date_part(حقل,expr) استخراج جزء من التاريخ أو الطابع الزمني أو الفاصل الزمني.
date_sub(تاريخ البدء، أيام الميلاد) إرجاع التاريخ numDays قبل startDate .
date_trunc(حقل,expr) إرجاع الطابع الزمني الذي تم اقتطاعه إلى الوحدة المحددة في field .
datediff(تاريخ انتهاء، تاريخ البدء) إرجاع عدد الأيام من startDate إلى endDate .
اليوم (expr) إرجاع يوم شهر التاريخ أو الطابع الزمني.
يوم الثقات (expr) إرجاع يوم شهر التاريخ أو الطابع الزمني.
يوم من الأسبوع (expr) إرجاع يوم الأسبوع من التاريخ أو الطابع الزمني.
يوم من السنة (expr) إرجاع يوم السنة من التاريخ أو الطابع الزمني.
استخراج(حقل من المصدر) إرجاع fieldsource .
from_unixtime(unixTime,fmt) إرجاع unixTime في fmt .
from_utc_timestamp(expr، المنطقة الزمنية) إرجاع طابع زمني expr محدد في UTC في المنطقة الزمنية timeZone .
ساعة (expr) إرجاع مكون الساعة من الطابع الزمني.
last_day(expr) إرجاع آخر يوم من الشهر الذي ينتمي إليه التاريخ.
make_date(سنة,شهر,يوم) إنشاء تاريخ من yearmonth و و day وحقول.
make_dt_interval([أيام[، ساعات[، دقائق[، ثوان]]]]) إنشاء فاصل زمني نهاري من days و hours و minssecs .
make_interval(سنوات، أشهر، أسابيع، أيام، ساعات، دقائق، ثانية) مهمل: إنشاء فاصل زمني من years و و و و و و monthsweeksdayshoursminssecs .
make_timestamp(سنة،شهر،يوم،ساعة،دقيقة،ثانية[،منطقة زمنية]) إنشاء طابع زمني من year حقول monthdayhourminsec و timezone .
make_ym_interval([سنوات[، أشهر]]) إنشاء فاصل زمني لمدة شهر من years و months .
دقيقة (expr) إرجاع مكون الدقيقة من الطابع الزمني في expr .
الشهر (expr) إرجاع مكون الشهر من الطابع الزمني في expr .
months_between(expr1, expr2[,roundOff]) إرجاع عدد الأشهر المنقضية بين التواريخ أو الطوابع الزمنية في expr1 و expr2 .
next_day(expr,dayOfWeek) إرجاع التاريخ الأول الذي هو أحدث من expr و المسماة كما في dayOfWeek .
الآن() إرجاع الطابع الزمني الحالي في بداية تقييم الاستعلام.
الربع (expr) إرجاع ربع السنة في expr النطاق من 1 إلى 4.
الثانية (expr) إرجاع المكون الثاني من الطابع الزمني في expr .
الطابع الزمني (expr) يلقي expr إلى الطابع الزمني.
timestamp_micros(expr) إنشاء ميكروثانية طابع زمني expr منذ عهد UTC.
timestamp_millis(expr) إنشاء مللي ثانية طابع زمني expr منذ عهد UTC.
timestamp_seconds(expr) إنشاء الثواني الطابع الزمني expr منذ عهد UTC.
to_date(expr[,fmt]) إرجاع expr تحويل إلى تاريخ باستخدام تنسيق اختياري.
to_timestamp(expr[,fmt]) إرجاع expr تحويل إلى طابع زمني باستخدام تنسيق اختياري.
to_unix_timestamp(expr[,fmt]) إرجاع الطابع الزمني expr في ك طابع زمني UNIX.
to_utc_timestamp(expr، المنطقة الزمنية) إرجاع الطابع الزمني في expr منطقة زمنية مختلفة مثل UTC.
ترونك (expr، fmt) إرجاع تاريخ مع جزء من التاريخ الذي تم اقتطاعه إلى الوحدة المحددة بواسطة نموذج التنسيق fmt .
try_add(expr1, expr2) إرجاع مجموع expr1 و expr2 أو NULL في حالة الخطأ.
try_divide(أرباح الأسهم، القسمة) إرجاع dividend مقسوما على divisor ، أو NULL إذا كان divisor 0.
unix_date(expr) إرجاع عدد الأيام منذ 1970-01-01 .
unix_micros(expr) إرجاع عدد الميكروسي ثانية منذ 1970-01-01 00:00:00 UTC .
unix_millis(expr) إرجاع عدد المللي ثانية منذ 1970-01-01 00:00:00 UTC .
unix_seconds(expr) إرجاع عدد الثواني منذ 1970-01-01 00:00:00 UTC .
unix_timestamp([expr[, fmt]]) eturns الطابع الزمني UNIX الوقت الحالي أو المحدد.
أيام الأسبوع (expr) إرجاع يوم الأسبوع من expr .
الأسبوعفي السنة(expr) إرجاع أسبوع السنة من expr .
سنة (expr) إرجاع مكون السنة من expr .
نافذة (expr، عرض[، شريحة[،بداية]] إنشاء إطار انزلاق يستند إلى التنقل عبر تعبير الطابع الزمني.

دالات التمثيل والمنشئات

للحصول على معلومات حول الصب بين الأنواع، راجع دالة التمثيلووظيفة try_cast.

الوظيفة الوصف
صفيف([expr [, ...]]) إرجاع صفيف مع العناصر الموجودة في expr .
bigint (expr) يلقي القيمة expr إلى BIGINT.
ثنائي(expr) يلقي قيمة expr إلى ثنائي.
منطقية (expr) يلقي expr إلى منطقية.
cast(نوع EXPR AS) تحويل القيمة expr إلى نوع البيانات الهدف type .
expr :: نوع تحويل القيمة expr إلى نوع البيانات الهدف type .
تاريخ(expr) تحويل القيمة expr إلى تاريخ.
عشري(expr) تحويل القيمة expr إلى عشري.
مزدوج (expr) يلقي القيمة expr إلى مزدوجة.
تعويم (expr) تحويل القيمة expr إلى FLOAT.
int(expr) تحويل القيمة expr إلى INTEGER.
make_date(سنة,شهر,يوم) إنشاء تاريخ من yearmonth و و day وحقول.
make_dt_interval([أيام[، ساعات[، دقائق[، ثوان]]]]) إنشاء فاصل زمني نهاري من days و hours و minssecs .
make_interval(سنوات، أشهر، أسابيع، أيام، ساعات، دقائق، ثانية) إنشاء فاصل زمني من years و و و و monthsweeksdayshoursminssecs .
make_timestamp(سنة،شهر،يوم،ساعة،دقيقة،ثانية[،منطقة زمنية]) إنشاء طابع زمني من year حقول monthdayhourminsec و timezone .
make_ym_interval([سنوات[، أشهر]]) إنشاء فاصل زمني لمدة شهر من years و months .
خريطة([{key1, value1} [, ...]]) إنشاء خريطة مع أزواج قيمة المفتاح المحددة.
named_struct({name1, val1} [, ...]) إنشاء هيكل بأسماء الحقول المحددة وقيمها.
صغيرة (expr) يلقي القيمة expr إلى SMALLINT.
سلسلة (expr) تحويل القيمة expr إلى STRING.
هيكل (expr1 [, ...]) إنشاء STRUCT بقيم الحقول المحددة.
tinyint (expr) يلقي expr إلى TINYINT.
الطابع الزمني (expr) يلقي expr إلى الطابع الزمني.
try_cast(نوع EXPR AS) تحويل القيمة expr إلى نوع البيانات الهدف type بأمان.

وظائف CSV

الوظيفة الوصف
from_csv(csvStr، مخطط[، خيارات]) إرجاع قيمة البنية باستخدام csvStr و schema .
schema_of_csv(csv[, خيارات]) إرجاع مخطط سلسلة CSV بتنسيق DDL.
to_csv(expr[, خيارات]) إرجاع سلسلة CSV بقيمة البنية المحددة.

وظائف JSON

الوظيفة الوصف
jsonStr : jsonPath إرجاع الحقول المستخرجة من jsonStr .
from_json(jsonStr، مخطط[، خيارات]) إرجاع قيمة البنية باستخدام jsonStr و schema .
get_json_object(expr، مسار) استخراج كائن JSON من path .
json_array_length(jsonArray) إرجاع عدد العناصر في الصفيف JSON الأبعد.
json_object_keys(jsonObject) إرجاع كافة مفاتيح الكائن JSON الأبعد كصفيف.
json_tuple(jsonStr، path1 [، ...]) إرجاع كائنات JSON متعددة كجهاز.
schema_of_json(json[, خيارات]) إرجاع مخطط سلسلة JSON بتنسيق DDL.
to_json(expr[, خيارات]) إرجاع سلسلة JSON مع البنية المحددة في expr .

وظائف XPath

الوظيفة الوصف
xpath (xml، xpath) إرجاع قيم داخل عقد xml تلك xpath المطابقة.
xpath_boolean(xml, xpath) إرجاع true إذا تم تقييم التعبير إلى ، أو إذا تم العثور على xpathtrue عقدة مطابقة. xml
xpath_double(xml, xpath) إرجاع قيمة مزدوجة من مستند XML.
xpath_float(xml, xpath) إرجاع قيمة FLOAT من مستند XML.
xpath_int(xml, xpath) إرجاع قيمة INTEGER من مستند XML.
xpath_long(xml, xpath) إرجاع قيمة BIGINT من مستند XML.
xpath_number(xml, xpath) إرجاع قيمة مزدوجة من مستند XML.
xpath_short(xml, xpath) إرجاع قيمة قصيرة من مستند XML.
xpath_string(xml, xpath) إرجاع محتويات عقدة XML الأولى التي تطابق تعبير XPath.

دالات متنوعة

الوظيفة الوصف
assert_true(expr) إرجاع خطأ إذا expr لم يكن صحيحا.
كيس expr { عندما opt1 ثم res1 } [...] [ELSE def] انتهاء إرجاع resN للأول optN الذي يساوي أو إذا لم يتطابق exprdef أي.
الحالة { عندما cond1 ثم res1 } [...] [ELSE def] انتهاء إرجاع resN لأول تقييم إلى condN true، أو إذا لم يتم العثور على def أي منها.
التلاحم (expr1، expr2 [، ...]) إرجاع الوسيطة غير الخالية الأولى.
مكعب (expr1 [، ...]) إنشاء مكعب متعدد الأبعاد باستخدام أعمدة التعبير المحددة.
current_catalog() إرجاع الكتالوج الحالي.
current_database() إرجاع قاعدة البيانات الحالية (مخطط).
current_user() إرجاع المستخدم الحالي.
فك التشفير ( { expr، { key1، value1 } [، ...] [،ديففالو]) إرجاع القيمة المطابقة للمفتاح.
elt(فهرس, expr1 [, ...] ) إرجاع التعبير nth.
أعظم(expr1 [, ...]) إرجاع أكبر قيمة لكافة الوسائط، تخطي القيم الخالية.
تجميع(col) يشير إلى ما إذا كان عمود محدد في GROUPING SET ، ROLLUP أو يمثل CUBE إجماليا فرعيا.
grouping_id([col1 [، ...]]) إرجاع مستوى التجميع لمجموعة من الأعمدة.
التجزئة(expr1 [, ...]) إرجاع قيمة مجزأة للوسائط.
java_method(فئة، طريقة[، arg1 [، ...]]) استدعاء أسلوب مع انعكاس.
إذا (cond، expr1، expr2) إرجاع expr1 إذا كان ، أو غير condtrueexpr2 ذلك.
iff(cond, expr1, expr2) إرجاع expr1 إذا كان ، أو غير condtrueexpr2 ذلك.
ifnull(expr1, expr2) إرجاع expr2 إذا كان ، أو غير expr1NULLexpr1 ذلك.
input_file_block_length() إرجاع الطول بالبايت من الكتلة التي يتم قراءتها.
input_file_block_start() إرجاع إزاحة البدء بالبايت من الكتلة التي يتم قراءتها.
input_file_name() إرجاع اسم الملف الذي تتم قراءته أو السلسلة الفارغة إذا لم تكن متوفرة.
is_member(المجموعة) إرجاع true إذا كان المستخدم الحالي عضوا في المجموعة.
يسول (expr) إرجاع true إذا كان exprNULL .
زنونول (expr) إرجاع true إذا لم يكن exprNULL .
الأقل(expr1 [, ...]) إرجاع أصغر قيمة لكافة الوسائط، تخطي القيم الخالية.
monotonically_increasing_id() إرجاع أعداد صحيحة زيادة 64 بت بشكل رتيب.
nvl(expr1, expr2) إرجاع expr2 إذا كان ، أو غير expr1NULLexpr1 ذلك.
nvl2(expr1, expr2, expr3) إرجاع expr2 إذا لم يكن ، أو غير expr1NULLexpr3 ذلك.
raise_error(expr) يطرح استثناء expr مع كالرسالة.
نطاق(نهاية) إرجاع جدول قيم ضمن نطاق محدد.
النطاق (بداية، نهاية [، خطوة [، numParts]]) إرجاع جدول قيم ضمن نطاق محدد.
تعكس(فئة، طريقة[، arg1 [، ...]]) استدعاء أسلوب مع انعكاس.
spark_partition_id() إرجاع معرف القسم الحالي.
مكدس (numRows, expr1 [, ...]) يفصل expr1 ، ...، exprN في numRows صفوف.
uuid() إرجاع سلسلة معرف فريدة عالميا (UUID).
نافذة (expr، عرض[، خطوة [، ابدأ]]) إنشاء إطار انزلاق يستند إلى التنقل عبر تعبير الطابع الزمني.
xxhash64(expr1 [, ...]) إرجاع قيمة مجزأة 64 بت من الوسيطات.
الإصدار() إرجاع إصدار أباتشي سبارك.