المشكلات الشائعة في تحويل البيانات
to<type> وCAST في سلوكهما في بعض الحالات، مثل حالة LowCardinality: إذ يزيل CAST السمة LowCardinality، بينما لا تفعل دوال to<type> ذلك. وينطبق الأمر نفسه على Nullable. هذا السلوك غير متوافق مع معيار SQL، ويمكن تغييره باستخدام الإعداد cast_keep_nullable.
انتبه إلى احتمال فقدان البيانات إذا جرى تحويل قيم من نوع بيانات إلى نوع أصغر (على سبيل المثال من
Int64 إلى Int32) أو بين
أنواع بيانات غير متوافقة (على سبيل المثال من String إلى Int). تأكد بعناية من أن النتيجة مطابقة لما هو متوقع.ملاحظات حول دوال toString
toString التحويل بين الأرقام، والسلاسل النصية (لكن ليس السلاسل ذات الطول الثابت)، والتواريخ، والتواريخ المقترنة بوقت.
تقبل جميع هذه الدوال وسيطة واحدة.
- عند التحويل من سلسلة نصية أو إليها، تُنسَّق القيمة أو تُحلَّل وفق القواعد نفسها المستخدمة في تنسيق TabSeparated (وفي معظم تنسيقات النص الأخرى أيضًا). وإذا تعذّر تحليل السلسلة النصية، يُطرَح استثناء ويُلغى الطلب.
- عند تحويل التواريخ إلى أرقام أو العكس، يمثّل التاريخ عدد الأيام منذ بداية حقبة Unix.
- عند تحويل التواريخ المقترنة بوقت إلى أرقام أو العكس، يمثّل التاريخ مع الوقت عدد الثواني منذ بداية حقبة Unix.
- يمكن لدالة
toStringالخاصة بوسيطةDateTimeأن تأخذ وسيطةStringثانية تتضمن اسم المنطقة الزمنية، على سبيل المثال:Europe/Amsterdam. وفي هذه الحالة، يُنسَّق الوقت وفقًا للمنطقة الزمنية المحددة.
ملاحظات حول الدالتين toDate/toDateTime
toDate/toDateTime كما يلي:
toDate(unix_timestamp)، التي كانت ستؤدي بخلاف ذلك إلى حدوث خطأ، وستستلزم كتابة الصيغة الأكثر تعقيدًا toDate(toDateTime(unix_timestamp)).
يُجرى التحويل بين التاريخ وتاريخ مع وقت بالطريقة الطبيعية: بإضافة وقت صفري أو بحذف الوقت.
يستخدم التحويل بين الأنواع الرقمية القواعد نفسها المستخدمة في الإسناد بين الأنواع الرقمية المختلفة في C++.
مثال
Query
Response
toUnixTimestamp.
CAST
Any
أمثلة
الاستخدام الأساسي
Query
Response
Query
Response
Query
Response
DATE
toDate، ويتصرف بالطريقة نفسها التي تتصرف بها toDate.
الصيغة
Date
أمثلة
الاستخدام الأساسي
Query
Response
accurateCast
CAST، يُجري accurateCast تحقّقًا أكثر صرامة من الأنواع ويطرح استثناءً إذا كان التحويل سيؤدي إلى فقدان الدقة أو إذا لم يكن التحويل ممكنًا.
هذه الدالة أكثر أمانًا من CAST العادي لأنها تمنع فقدان الدقة وعمليات التحويل غير الصالحة.
البنية
Any
أمثلة
تحويل ناجح
Query
Response
Query
Response
accurateCastOrDefault
accurateCast، لكنها تُرجع قيمة افتراضية بدلًا من إثارة استثناء إذا تعذّر إجراء التحويل بدقة.
إذا جرى توفير قيمة افتراضية باعتبارها الوسيط الثاني، فيجب أن تكون من النوع الهدف.
إذا لم تُوفَّر قيمة افتراضية، تُستخدم القيمة الافتراضية للنوع الهدف.
الصياغة
x— قيمة لتحويلها.AnyT— اسم نوع البيانات الهدف.const Stringdefault_value— اختياري. القيمة الافتراضية التي تُعاد إذا فشل التحويل.Any
Any
أمثلة
تحويل ناجح
Query
Response
Query
Response
Query
Response
accurateCastOrNull
accurateCast، لكنها تُرجع NULL بدلًا من طرح استثناء إذا تعذّر إجراء التحويل بدقة.
تجمع هذه الدالة بين أمان accurateCast والمعالجة السلسة للأخطاء.
الصياغة
NULL إذا تعذر التحويل. Any
أمثلة
تحويل ناجح
Query
Response
Query
Response
formatRow
إذا كان التنسيق يحتوي على لاحقة/بادئة، فستُكتب في كل صف.
لا تدعم هذه الدالة إلا التنسيقات المعتمدة على الصفوف.
String
أمثلة
الاستخدام الأساسي
Query
Response
Query
Response
formatRowNoNewline
formatRow، لكنه يزيل محرف السطر الجديد من كل صف.
يحوّل تعبيرات عشوائية إلى سلسلة نصية باستخدام التنسيق المحدد، لكنه يزيل أي محارف سطر جديد لاحقة من النتيجة.
الصيغة
String
أمثلة
الاستخدام الأساسي
Query
Response
fromUnixTimestamp64Micro
DateTime64 بدقة الميكروثانية.
تُعامَل قيمة الإدخال على أنها طابع زمني لـ Unix بدقة الميكروثانية (عدد الميكروثواني منذ 1970-01-01 00:00:00 UTC).
الصياغة
value— طابع زمني لـ Unix بالميكروثانية.Int64timezone— اختياري. المنطقة الزمنية للقيمة المُعادة.String
DateTime64 بدقة ميكروثانية. DateTime64(6)
أمثلة
مثال للاستخدام
Query
Response
fromUnixTimestamp64Milli
DateTime64 بدقة الملّي ثانية.
تُعامَل قيمة الإدخال على أنها طابع زمني لـ Unix بدقة الملّي ثانية (عدد الملّي ثواني منذ 1970-01-01 00:00:00 UTC).
الصياغة
value— طابع زمني بنظام Unix بالمللي ثانية.Int64timezone— اختياري. المنطقة الزمنية للقيمة المعادة.String
DateTime64 بدقة المللي ثانية. DateTime64(3)
أمثلة
مثال على الاستخدام
Query
Response
fromUnixTimestamp64Nano
DateTime64 بدقة النانوثانية.
تُعامَل قيمة الإدخال على أنها طابع زمني من Unix بدقة النانوثانية (أي عدد النانوثواني منذ 1970-01-01 00:00:00 UTC).
يُرجى ملاحظة أن قيمة الإدخال تُعامَل على أنها طابع زمني بتوقيت UTC، وليس وفق المنطقة الزمنية لقيمة الإدخال.
value— طابع زمني لـ Unix بالنانوثانية.Int64timezone— اختياري. المنطقة الزمنية للقيمة المُعادة.String
DateTime64 بدقة نانوثانية. DateTime64(9)
أمثلة
مثال للاستخدام
Query
Response
fromUnixTimestamp64Second
DateTime64 بدقة الثواني.
تُعامَل قيمة الإدخال على أنها طابع زمني من Unix بدقة الثواني (أي عدد الثواني منذ 1970-01-01 00:00:00 UTC).
الصيغة
value— طابع زمني بنظام Unix بالثواني.Int64timezone— اختياري. المنطقة الزمنية للقيمة المُعادة.String
DateTime64 بدقة الثواني. DateTime64(0)
أمثلة
مثال على الاستخدام
Query
Response
parseDateTime
formatDateTime.
وهي تُحلّل وسيطًا من النوع String باستخدام سلسلة تنسيق من النوع String. وتُرجِع قيمة من النوع DateTime.
البنية
TO_UNIXTIME
الوسيطات
time_string— سلسلة نصية تُحلَّل إلى DateTime.Stringformat— سلسلة تنسيق تحدد كيفية تحليل time_string.Stringtimezone— اختياري. المنطقة الزمنية.String
DateTime
أمثلة
مثال على الاستخدام
Query
Response
parseDateTime32BestEffort
DateTime.
تحلّل الدالة تنسيقات ISO 8601 وRFC 1123 - 5.2.14 RFC-822 Date and Time Specification وتنسيقات التاريخ والوقت الخاصة بـ ClickHouse، بالإضافة إلى بعض التنسيقات الأخرى.
الصيغة
time_string— قيمة من نوع String تحتوي على تاريخ ووقت لتحويلهما.Stringtime_zone— اختياري. المنطقة الزمنية التي يُحلَّلtime_stringوفقًا لها.String
time_string كقيمة من نوع DateTime. DateTime
أمثلة
مثال على الاستخدام
Query
Response
Query
Response
Query
Response
parseDateTime32BestEffortOrNull
parseDateTime32BestEffort، باستثناء أنها تُرجِع NULL عند مواجهة تنسيق تاريخ يتعذّر معالجته.
الصياغة
time_string— قيمة من النوعStringتحتوي على تاريخ ووقت لتحويلهما.Stringtime_zone— اختياري. المنطقة الزمنية التي يُفسَّر وفقًا لهاtime_string.String
DateTime مُفسَّرًا من السلسلة، أو NULL إذا فشل التفسير. DateTime
أمثلة
مثال على الاستخدام
Query
Response
parseDateTime32BestEffortOrZero
parseDateTime32BestEffort، باستثناء أنها تُرجِع تاريخًا صفريًا أو قيمة تاريخ ووقت صفرية عند مصادفة تنسيق تاريخ يتعذر معالجته.
البنية
time_string— سلسلة نصية تحتوي على تاريخ ووقت لتحويلهما.Stringtime_zone— اختياري. المنطقة الزمنية التي يُفسَّر وفقًا لهاtime_string.String
DateTime ناتجًا عن تحليل السلسلة، أو التاريخ الصفري (1970-01-01 00:00:00) إذا فشلت عملية التحليل. DateTime
أمثلة
مثال على الاستخدام
Query
Response
parseDateTime64
formatDateTime لـ DateTime64.
وهي تُحلِّل وسيطة من النوع String باستخدام String للتنسيق. وتُرجع نوع DateTime64 يمكنه تمثيل التواريخ من 1900 إلى 2299 بدقة أجزاء من الثانية.
الصيغة
time_string— سلسلة نصية يُراد تحليلها إلى DateTime64.Stringformat— سلسلة تنسيق تحدد كيفية تحليل time_string.Stringtimezone— اختياري. المنطقة الزمنية.String
DateTime64
أمثلة
مثال على الاستخدام
Query
Response
parseDateTime64BestEffort
parseDateTimeBestEffort، لكنها تُحلِّل أيضًا المللي ثانية والميكروثانية وتُرجع نوع البيانات DateTime64.
البنية
time_string— قيمة من نوعStringتحتوي على تاريخ أو تاريخ ووقت لتحويله.Stringprecision— اختياري. الدقة المطلوبة.3للملّي ثانية، و6للميكروثانية. القيمة الافتراضية:3.UInt8time_zone— اختياري. المنطقة الزمنية. تحلّل الدالةtime_stringوفقًا للمنطقة الزمنية.String
time_string بعد تحويله إلى نوع البيانات DateTime64. DateTime64
أمثلة
مثال للاستخدام
Query
Response
parseDateTime64BestEffortOrNull
parseDateTime64BestEffort، إلا أنها تُرجع NULL عند مواجهة تنسيق تاريخ يتعذر معالجته.
الصياغة
time_string— قيمةStringتحتوي على تاريخ أو تاريخ مع وقت لتحويله.Stringprecision— اختياري. الدقة المطلوبة.3للملّي ثانية و6للميكروثانية. القيمة الافتراضية:3.UInt8time_zone— اختياري. المنطقة الزمنية. تُحلِّل الدالةtime_stringوفقًا للمنطقة الزمنية.String
time_string بعد تحويله إلى DateTime64، أو NULL إذا تعذّر تحليل الإدخال. DateTime64 أو NULL
أمثلة
مثال على الاستخدام
Query
Response
parseDateTime64BestEffortOrZero
parseDateTime64BestEffort، إلا أنها تُرجع تاريخًا صفريًا أو تاريخًا ووقتًا صفريين عند مصادفة تنسيق تاريخ يتعذر معالجته.
الصياغة
time_string— قيمة من نوع String تحتوي على تاريخ أو تاريخ مع وقت لتحويله.Stringprecision— اختياري. الدقة المطلوبة.3للمللي ثانية، و6للميكروثانية. القيمة الافتراضية:3.UInt8time_zone— اختياري. المنطقة الزمنية. تحلّل الدالةtime_stringوفقًا للمنطقة الزمنية.String
time_string بعد تحويله إلى DateTime64، أو التاريخ/التاريخ والوقت الصفري (1970-01-01 00:00:00.000) إذا تعذّر تحليل الإدخال. DateTime64
أمثلة
مثال على الاستخدام
Query
Response
parseDateTime64BestEffortUS
parseDateTime64BestEffort، باستثناء أن هذه الدالة تُفضّل تنسيق التاريخ الأمريكي (MM/DD/YYYY وما إلى ذلك) عند وجود التباس.
البنية
time_string—Stringيحتوي على تاريخ أو تاريخ يتضمن وقتًا لتحويله.Stringprecision— اختياري. الدقة المطلوبة.3للملّي ثانية، و6للميكروثانية. الافتراضي:3.UInt8time_zone— اختياري. المنطقة الزمنية. تحلّل الدالةtime_stringوفقًا للمنطقة الزمنية.String
time_string بعد تحويله إلى DateTime64 مع تفضيل تنسيق التاريخ الأمريكي في الحالات الملتبسة. DateTime64
أمثلة
مثال على الاستخدام
Query
Response
parseDateTime64BestEffortUSOrNull
parseDateTime64BestEffort، باستثناء أن هذه الدالة تفضّل تنسيق التاريخ الأمريكي (MM/DD/YYYY وما إلى ذلك) عند وجود التباس، وتُرجع NULL إذا صادفت تنسيق تاريخ لا يمكن معالجته.
البنية
time_string— قيمةStringتحتوي على تاريخ أو تاريخًا مع وقت لتحويله.Stringprecision— اختياري. الدقة المطلوبة.3للميلي ثانية، و6للميكروثانية. القيمة الافتراضية:3.UInt8time_zone— اختياري. المنطقة الزمنية. تُحلِّل الدالةtime_stringوفقًا للمنطقة الزمنية.String
time_string بعد تحويله إلى DateTime64 مع تفضيل التنسيق الأمريكي، أو NULL إذا تعذر تحليل الإدخال. DateTime64 أو NULL
أمثلة
مثال على الاستخدام
Query
Response
parseDateTime64BestEffortUSOrZero
parseDateTime64BestEffort، باستثناء أن هذه الدالة تفضّل تنسيق التاريخ الأمريكي (MM/DD/YYYY وما إلى ذلك) عند وجود التباس، وتُرجع التاريخ الصفري أو التاريخ والوقت الصفري إذا صادفت تنسيق تاريخ يتعذّر معالجته.
الصياغة
time_string— قيمةStringتحتوي على تاريخ أو تاريخ مع وقت لتحويله.Stringprecision— اختياري. الدقة المطلوبة.3للميلي ثانية، و6للميكروثانية. القيمة الافتراضية:3.UInt8time_zone— اختياري. المنطقة الزمنية. تُحلِّل الدالةtime_stringوفقًا للمنطقة الزمنية.String
time_string بعد تحويله إلى DateTime64 باستخدام تفضيل التنسيق الأمريكي، أو قيمة التاريخ/التاريخ والوقت الصفرية (1970-01-01 00:00:00.000) إذا تعذّر تحليل الإدخال. DateTime64
أمثلة
مثال على الاستخدام
Query
Response
parseDateTime64InJodaSyntax
formatDateTimeInJodaSyntax لـ DateTime64.
تُحلِّل وسيطًا من النوع String باستخدام سلسلة تنسيق بأسلوب Joda. وتُرجع نوع DateTime64، الذي يمكنه تمثيل التواريخ من 1900 إلى 2299 بدقة أجزاء من الثانية.
راجِع توثيق Joda Time للاطلاع على أنماط التنسيق.
البنية
time_string— قيمةStringالمراد تحليلها إلى DateTime64.Stringformat— سلسلة تنسيق بصياغة Joda تحدد كيفية تحليل time_string.Stringtimezone— اختياري. المنطقة الزمنية.String
DateTime64
أمثلة
مثال استخدام
Query
Response
parseDateTime64InJodaSyntaxOrNull
parseDateTime64InJodaSyntax، لكنها تُرجع NULL عند مواجهة تنسيق تاريخ يتعذّر تحليله.
الصيغة
time_string— سلسلة نصية لتحليلها إلى DateTime64.Stringformat— سلسلة تنسيق بصيغة Joda تحدد كيفية تحليل time_string.Stringtimezone— اختياري. المنطقة الزمنية.String
Nullable(DateTime64)
أمثلة
مثال على الاستخدام
Query
Response
parseDateTime64InJodaSyntaxOrZero
parseDateTime64InJodaSyntax، لكنها تُرجع التاريخ الصفري عند مواجهة تنسيق تاريخ غير قابل للتحليل.
الصياغة
time_string— سلسلة نصية لتحليلها إلى DateTime64.Stringformat— سلسلة تنسيق بصياغة Joda تحدد كيفية تحليل time_string.Stringtimezone— اختياري. المنطقة الزمنية.String
DateTime64
أمثلة
مثال على الاستخدام
Query
Response
parseDateTime64OrNull
parseDateTime64، ولكنها تُرجع NULL عند مصادفة تنسيق تاريخ يتعذّر تحليله.
البنية
time_string— سلسلة نصية تُحلَّل إلى DateTime64.Stringformat— سلسلة تنسيق تحدد كيفية تحليل time_string.Stringtimezone— اختياري. المنطقة الزمنية.String
Nullable(DateTime64)
أمثلة
مثال على الاستخدام
Query
Response
parseDateTime64OrZero
parseDateTime64، لكنها تُرجع تاريخًا صفريًا عند مواجهة تنسيق تاريخ يتعذر تحليله.
البنية
time_string— سلسلة نصية تُحلَّل إلى DateTime64.Stringformat— سلسلة تنسيق تحدد كيفية تحليلtime_string.Stringtimezone— اختياري. المنطقة الزمنية.String
DateTime64
أمثلة
مثال على الاستخدام
Query
Response
parseDateTimeBestEffort
- سلسلة تحتوي على طابع زمني Unix مكوَّن من 9 إلى 10 أرقام.
- سلسلة تتضمن مكوّن تاريخ ومكوّن وقت:
YYYYMMDDhhmmss,DD/MM/YYYY hh:mm:ss,DD-MM-YY hh:mm,YYYY-MM-DD hh:mm:ss، إلخ. - سلسلة تتضمن تاريخًا، ولكن من دون مكوّن وقت:
YYYY,YYYYMM,YYYY*MM,DD/MM/YYYY,DD-MM-YY، إلخ. - سلسلة تتضمن يومًا ووقتًا:
DD,DD hh,DD hh:mm. في هذه الحالة، يُستبدلMMبـ01. - سلسلة تتضمن التاريخ والوقت مع معلومات إزاحة المنطقة الزمنية:
YYYY-MM-DD hh:mm:ss ±h:mm، إلخ. - طابع زمني بتنسيق syslog:
Mmm dd hh:mm:ss. على سبيل المثال:Jun 9 14:20:32.
time_string— سلسلة نصية تحتوي على تاريخ ووقت لتحويلهما.Stringtime_zone— اختياري. المنطقة الزمنية التي يُحلَّلtime_stringوفقًا لها.String
time_string على هيئة DateTime. DateTime
أمثلة
مثال على الاستخدام
Query
Response
Query
Response
Query
Response
parseDateTimeBestEffortOrNull
parseDateTimeBestEffort تمامًا، باستثناء أنها تُرجع NULL عندما تصادف تنسيق تاريخ يتعذر معالجته.
تحلّل الدالة ISO 8601 وRFC 1123 - 5.2.14 RFC-822 Date and Time Specification وتنسيقات التاريخ والوقت الخاصة بـ ClickHouse وبعض التنسيقات الأخرى.
التنسيقات غير القياسية المدعومة:
- سلسلة تحتوي على Unix timestamp مكوّن من 9 إلى 10 أرقام.
- سلسلة تحتوي على مكوّن تاريخ ومكوّن وقت:
YYYYMMDDhhmmss,DD/MM/YYYY hh:mm:ss,DD-MM-YY hh:mm,YYYY-MM-DD hh:mm:ss، إلخ. - سلسلة تحتوي على تاريخ، ولكن من دون مكوّن وقت:
YYYY,YYYYMM,YYYY*MM,DD/MM/YYYY,DD-MM-YY، إلخ. - سلسلة تحتوي على يوم ووقت:
DD,DD hh,DD hh:mm. في هذه الحالة، يُستبدلMMبـ01. - سلسلة تتضمن التاريخ والوقت إلى جانب معلومات إزاحة المنطقة الزمنية:
YYYY-MM-DD hh:mm:ss ±h:mm، إلخ. - syslog timestamp:
Mmm dd hh:mm:ss. على سبيل المثال:Jun 9 14:20:32.
time_string— سلسلة نصية تحتوي على تاريخ ووقت لتحويلهما.Stringtime_zone— اختياري. المنطقة الزمنية التي يُفسَّرtime_stringوفقًا لها.String
time_string كقيمة من النوع DateTime، أو NULL إذا تعذر تفسير المُدخل. DateTime أو NULL
أمثلة
مثال على الاستخدام
Query
Response
parseDateTimeBestEffortOrZero
parseDateTimeBestEffort، باستثناء أنها تُرجع zero date أو zero date time عند مصادفة تنسيق تاريخ يتعذر معالجته.
تحلّل الدالة ISO 8601 وRFC 1123 - 5.2.14 RFC-822 Date and Time Specification وتنسيقات التاريخ والوقت الخاصة بـ ClickHouse، بالإضافة إلى بعض التنسيقات الأخرى.
التنسيقات غير القياسية المدعومة:
- سلسلة تحتوي على Unix timestamp مكوّن من 9 إلى 10 أرقام.
- سلسلة تتضمن مكوّن تاريخ ومكوّن وقت:
YYYYMMDDhhmmss,DD/MM/YYYY hh:mm:ss,DD-MM-YY hh:mm,YYYY-MM-DD hh:mm:ss، إلخ. - سلسلة تتضمن تاريخًا، ولكن من دون مكوّن وقت:
YYYY,YYYYMM,YYYY*MM,DD/MM/YYYY,DD-MM-YY، إلخ. - سلسلة تتضمن يومًا ووقتًا:
DD,DD hh,DD hh:mm. في هذه الحالة، يُستبدلMMبـ01. - سلسلة تتضمن التاريخ والوقت إلى جانب معلومات إزاحة المنطقة الزمنية:
YYYY-MM-DD hh:mm:ss ±h:mm، إلخ. - syslog timestamp:
Mmm dd hh:mm:ss. على سبيل المثال:Jun 9 14:20:32.
time_string— سلسلة نصية تحتوي على تاريخ ووقت لتحويلهما.Stringtime_zone— اختياري. المنطقة الزمنية التي يُحلَّلtime_stringوفقًا لها.String
time_string كـ DateTime، أو تاريخًا/تاريخًا ووقتًا صفريًا (1970-01-01 أو 1970-01-01 00:00:00) إذا تعذّر تحليل المُدخل. DateTime
أمثلة
مثال على الاستخدام
Query
Response
parseDateTimeBestEffortUS
parseDateTimeBestEffort مع تنسيقات التاريخ وفق ISO، مثل YYYY-MM-DD hh:mm:ss، ومع تنسيقات التاريخ الأخرى التي يمكن فيها استخراج مكوِّنَي الشهر واليوم بوضوح ومن دون التباس، مثل YYYYMMDDhhmmss وYYYY-MM وDD hh وYYYY-MM-DD hh:mm:ss ±h:mm.
إذا تعذّر استخراج مكوِّنَي الشهر واليوم بوضوح ومن دون التباس، مثل MM/DD/YYYY أو MM-DD-YYYY أو MM-DD-YY، فإنها تفضّل تنسيق التاريخ الأمريكي بدلًا من DD/MM/YYYY أو DD-MM-YYYY أو DD-MM-YY.
واستثناءً مما سبق، إذا كانت قيمة الشهر أكبر من 12 وأقل من أو تساوي 31، فستعود هذه الدالة إلى سلوك parseDateTimeBestEffort. فعلى سبيل المثال، يُفسَّر 15/08/2020 على أنه 2020-08-15.
البنية
time_string— قيمةStringتحتوي على تاريخ ووقت لتحويله.Stringtime_zone— اختياري. المنطقة الزمنية التي يُحلَّلtime_stringعلى أساسها.String
time_string كقيمة DateTime مع تفضيل تنسيق التاريخ الأمريكي في الحالات الملتبسة. DateTime
أمثلة
مثال على الاستخدام
Query
Response
parseDateTimeBestEffortUSOrNull
parseDateTimeBestEffortUS، باستثناء أنها تُرجع NULL عندما تصادف تنسيق تاريخ يتعذر معالجته.
تتصرف هذه الدالة مثل parseDateTimeBestEffort مع تنسيقات تاريخ ISO، لكنها تفضّل تنسيق التاريخ الأمريكي في الحالات الملتبسة، مع إرجاع NULL عند حدوث أخطاء في التحليل.
البنية
time_string— سلسلة نصية تحتوي على تاريخ ووقت لتحويلهما.Stringtime_zone— اختياري. المنطقة الزمنية التي يُحلَّلtime_stringوفقًا لها.String
time_string كقيمة من نوع DateTime باستخدام تفضيل التنسيق الأمريكي، أو NULL إذا تعذّر تحليل الإدخال. DateTime أو NULL
أمثلة
مثال على الاستخدام
Query
Response
parseDateTimeBestEffortUSOrZero
parseDateTimeBestEffortUS، باستثناء أنها تُرجِع تاريخًا صفريًا (1970-01-01) أو تاريخًا صفريًا مع وقت (1970-01-01 00:00:00) عند مواجهة تنسيق تاريخ يتعذر معالجته.
تعمل هذه الدالة مثل parseDateTimeBestEffort مع تنسيقات تاريخ ISO، لكنها تُفضّل تنسيق التاريخ الأمريكي في الحالات الملتبسة، وتُرجِع قيمة صفرية عند حدوث أخطاء في التحليل.
البنية
time_string— قيمة من النوعStringتحتوي على تاريخ ووقت لتحويلهما.Stringtime_zone— اختياري. المنطقة الزمنية التي يُفسَّر وفقًا لهاtime_string.String
time_string على هيئة DateTime مع تفضيل التنسيق الأمريكي، أو التاريخ/التاريخ والوقت الصفري (1970-01-01 أو 1970-01-01 00:00:00) إذا تعذّر تفسير الإدخال. DateTime
أمثلة
مثال على الاستخدام
Query
Response
parseDateTimeInJodaSyntax
formatDateTimeInJodaSyntax.
وهي تحلّل String argument باستخدام format String بنمط Joda. وتُرجِع نوع DateTime.
ارجع إلى توثيق Joda Time للاطلاع على أنماط التنسيق.
البنية
time_string— سلسلة نصية تُحلَّل إلى DateTime.Stringformat— سلسلة تنسيق ببنية Joda تحدد كيفية تحليل time_string.Stringtimezone— اختياري. المنطقة الزمنية.String
DateTime
أمثلة
مثال على الاستخدام
Query
Response
parseDateTimeInJodaSyntaxOrNull
parseDateTimeInJodaSyntax، لكنها تُرجِع NULL عند مصادفة تنسيق تاريخ يتعذر تحليله.
البنية
time_string— قيمة String المطلوب تحليلها إلى DateTime.Stringformat— سلسلة تنسيق ببناء جملة Joda تحدد كيفية تحليل time_string.Stringtimezone— اختياري. المنطقة الزمنية.String
Nullable(DateTime)
أمثلة
مثال على الاستخدام
Query
Response
parseDateTimeInJodaSyntaxOrZero
parseDateTimeInJodaSyntax، لكنها تُرجع التاريخ الصفري عند مواجهة تنسيق تاريخ يتعذر تحليله.
الصياغة
time_string— سلسلة نصية المطلوب تحليلها إلى DateTime.Stringformat— سلسلة تنسيق ببناء جملة Joda تحدد كيفية تحليل time_string.Stringtimezone— اختياري. المنطقة الزمنية.String
DateTime
أمثلة
مثال على الاستخدام
Query
Response
parseDateTimeOrNull
parseDateTime، لكنها تُرجع NULL عند مواجهة تنسيق تاريخ يتعذر تحليله.
البنية
str_to_date
المعاملات
time_string— سلسلة نصية يُراد تحليلها إلى DateTime.Stringformat— سلسلة تنسيق تحدد كيفية تحليل time_string.Stringtimezone— اختياري. المنطقة الزمنية.String
Nullable(DateTime)
أمثلة
مثال على الاستخدام
Query
Response
parseDateTimeOrZero
parseDateTime، لكنها تُرجع التاريخ الصفري عند مصادفة تنسيق تاريخ غير قابل للتحليل.
الصياغة
time_string— سلسلة نصية مطلوب تحليلها إلى DateTime.Stringformat— سلسلة تنسيق تحدد كيفية تحليل time_string.Stringtimezone— اختياري. المنطقة الزمنية.String
DateTime
أمثلة
مثال على الاستخدام
Query
Response
reinterpret
x، وتُعيد تفسيره كنوع الوجهة.
البنية
x— أي نوع.Anytype— النوع الهدف. إذا كان مصفوفة، فيجب أن يكون نوع عناصر المصفوفة من الأنواع ذات الطول الثابت.String
Any
أمثلة
مثال على الاستخدام
Query
Response
Query
Response
reinterpretAsDate
x— عدد الأيام منذ بداية حقبة Unix.(U)Int*أوFloat*أوDateأوDateTimeأوUUIDأوStringأوFixedString
Date
أمثلة
مثال على الاستخدام
Query
Response
reinterpretAsDateTime
x— عدد الثواني منذ بداية حقبة يونكس.(U)Int*أوFloat*أوDateأوDateTimeأوUUIDأوStringأوFixedString
DateTime
أمثلة
مثال للاستخدام
Query
Response
reinterpretAsFixedString
x. FixedString
أمثلة
مثال على الاستخدام
Query
Response
reinterpretAsFloat32
CAST، لا تحاول الدالة الحفاظ على القيمة الأصلية؛ فإذا لم يكن النوع الهدف قادرًا على تمثيل نوع الإدخال، تكون قيمة الإخراج غير معرّفة.
البنية
x— القيمة المراد إعادة تفسيرها كـFloat32.(U)Int*أوFloat*أوDateأوDateTimeأوUUIDأوStringأوFixedString
x بعد إعادة تفسيرها. Float32
أمثلة
مثال على الاستخدام
Query
Response
reinterpretAsFloat64
CAST، لا تحاول الدالة الحفاظ على القيمة الأصلية؛ وإذا كان النوع الهدف غير قادر على تمثيل نوع الإدخال، تكون قيمة الإخراج غير معرّفة.
البنية
x— قيمة يُعاد تفسيرها كـ Float64.(U)Int*أوFloat*أوDateأوDateTimeأوUUIDأوStringأوFixedString
x بعد إعادة تفسيرها. Float64
أمثلة
مثال على الاستخدام
Query
Response
reinterpretAsInt128
CAST، لا تحاول هذه الدالة الحفاظ على القيمة الأصلية؛ فإذا كان النوع الهدف غير قادر على تمثيل نوع الإدخال، تكون قيمة الإخراج غير معرّفة.
البنية
x— القيمة المراد إعادة تفسيرها كـ Int128.(U)Int*أوFloat*أوDateأوDateTimeأوUUIDأوStringأوFixedString
x بعد إعادة تفسيرها. Int128
أمثلة
مثال على الاستخدام
Query
Response
reinterpretAsInt16
CAST، لا تحاول الدالة الحفاظ على القيمة الأصلية؛ فإذا لم يكن النوع المستهدف قادرًا على تمثيل نوع الإدخال، تكون قيمة الإخراج غير معرّفة.
الصياغة
x— القيمة المراد إعادة تفسيرها كـ Int16.(U)Int*أوFloat*أوDateأوDateTimeأوUUIDأوStringأوFixedString
x بعد إعادة تفسيرها. Int16
أمثلة
مثال على الاستخدام
Query
Response
reinterpretAsInt256
CAST، لا تحاول هذه الدالة الحفاظ على القيمة الأصلية؛ وإذا كان النوع الهدف غير قادر على تمثيل نوع الإدخال، تكون النتيجة غير معرّفة.
البنية
x— القيمة المراد إعادة تفسيرها كـ Int256.(U)Int*أوFloat*أوDateأوDateTimeأوUUIDأوStringأوFixedString
x بعد إعادة تفسيرها. Int256
أمثلة
مثال على الاستخدام
Query
Response
reinterpretAsInt32
CAST، لا تحاول الدالة الحفاظ على القيمة الأصلية؛ فإذا لم يكن النوع الهدف قادرًا على تمثيل نوع الإدخال، تكون قيمة الإخراج غير معرّفة.
البنية
x— القيمة المراد إعادة تفسيرها إلى Int32.(U)Int*أوFloat*أوDateأوDateTimeأوUUIDأوStringأوFixedString
x بعد إعادة تفسيرها. Int32
أمثلة
مثال للاستخدام
Query
Response
reinterpretAsInt64
CAST، لا تحاول الدالة الحفاظ على القيمة الأصلية؛ فإذا لم يكن النوع الهدف قادرًا على تمثيل نوع الإدخال، تكون قيمة الإخراج غير معرّفة.
البنية
x— القيمة المراد إعادة تفسيرها كـ Int64.(U)Int*أوFloat*أوDateأوDateTimeأوUUIDأوStringأوFixedString
x بعد إعادة تفسيرها. Int64
أمثلة
مثال على الاستخدام
Query
Response
reinterpretAsInt8
CAST، لا تحاول هذه الدالة الحفاظ على القيمة الأصلية؛ وإذا كان النوع الهدف غير قادر على تمثيل نوع الإدخال، تكون قيمة الإخراج غير معرّفة.
البنية
x— القيمة المراد إعادة تفسيرها إلى Int8.(U)Int*أوFloat*أوDateأوDateTimeأوUUIDأوStringأوFixedString
x بعد إعادة تفسيرها. Int8
أمثلة
مثال على الاستخدام
Query
Response
reinterpretAsString
String تحتوي على بايتات تمثل x. String
أمثلة
مثال على الاستخدام
Query
Response
reinterpretAsUInt128
CAST، لا تحاول الدالة الحفاظ على القيمة الأصلية؛ فإذا لم يكن النوع الهدف قادرًا على تمثيل نوع الإدخال، تكون قيمة الإخراج غير معرّفة.
البنية
x— القيمة المراد إعادة تفسيرها كـ UInt128.(U)Int*أوFloat*أوDateأوDateTimeأوUUIDأوStringأوFixedString
x بعد إعادة تفسيرها. UInt128
أمثلة
مثال على الاستخدام
Query
Response
reinterpretAsUInt16
CAST، لا تحاول هذه الدالة الحفاظ على القيمة الأصلية؛ فإذا لم يكن النوع الهدف قادرًا على تمثيل نوع الإدخال، تكون قيمة الإخراج غير معرّفة.
البنية
x— القيمة المطلوب إعادة تفسيرها كـ UInt16.(U)Int*أوFloat*أوDateأوDateTimeأوUUIDأوStringأوFixedString
x بعد إعادة تفسيرها. UInt16
أمثلة
مثال على الاستخدام
Query
Response
reinterpretAsUInt256
CAST، لا تحاول الدالة الحفاظ على القيمة الأصلية؛ فإذا لم يكن النوع الهدف قادرًا على تمثيل نوع الإدخال، تكون قيمة الإخراج غير معرّفة.
الصياغة
x— القيمة المراد إعادة تفسيرها بصفتها UInt256.(U)Int*أوFloat*أوDateأوDateTimeأوUUIDأوStringأوFixedString
x بعد إعادة تفسيرها. UInt256
أمثلة
مثال على الاستخدام
Query
Response
reinterpretAsUInt32
CAST، لا تحاول الدالة الحفاظ على القيمة الأصلية؛ وإذا لم يكن النوع الهدف قادرًا على تمثيل نوع الإدخال، فستكون قيمة الإخراج غير معرّفة.
الصيغة
x— القيمة المراد إعادة تفسيرها على أنها UInt32.(U)Int*أوFloat*أوDateأوDateTimeأوUUIDأوStringأوFixedString
x بعد إعادة تفسيرها. UInt32
أمثلة
مثال للاستخدام
Query
Response
reinterpretAsUInt64
CAST، لا تحاول الدالة الحفاظ على القيمة الأصلية؛ وإذا كان النوع الهدف غير قادر على تمثيل نوع الإدخال، تكون قيمة الإخراج غير معرّفة.
الصيغة
x— القيمة المراد إعادة تفسيرها كـ UInt64.Int*أوUInt*أوFloat*أوDateأوDateTimeأوUUIDأوStringأوFixedString
x. UInt64
أمثلة
مثال على الاستخدام
Query
Response
reinterpretAsUInt8
CAST، لا تحاول الدالة الحفاظ على القيمة الأصلية؛ فإذا لم يكن النوع الهدف قادرًا على تمثيل نوع الإدخال، تكون النتيجة غير معرّفة.
البنية
x— القيمة المطلوب إعادة تفسيرها باعتبارها UInt8.(U)Int*أوFloat*أوDateأوDateTimeأوUUIDأوStringأوFixedString
x بعد إعادة تفسيرها. UInt8
أمثلة
مثال على الاستخدام
Query
Response
reinterpretAsUUID
fixed_string— سلسلة بايتات بترتيبbig-endian.FixedString
UUID. UUID
أمثلة
من String إلى UUID
Query
Response
toBFloat16
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.تعبير
BFloat16
أمثلة
مثال على الاستخدام
Query
Response
toBFloat16OrNull
- التمثيلات النصية للقيم الرقمية.
NULL):
- التمثيلات النصية للقيم الثنائية والسداسية العشرية.
- القيم الرقمية.
تسمح الدالة بفقدان الدقة بصمت أثناء التحويل من التمثيل النصي.
x— تمثيل نصي لرقم.String
brain-float من 16 بت، وإلا NULL. BFloat16 أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toBFloat16OrZero
- التمثيلات النصية للقيم الرقمية.
0):
- التمثيلات النصية للقيم الثنائية والسداسية العشرية.
- القيم الرقمية.
تسمح الدالة بفقدان الدقة بصمت أثناء التحويل من التمثيل النصي.
x— تمثيل نصي لعدد.String
brain-float ذات 16 بت، وإلا فتُرجع 0. BFloat16
أمثلة
مثال على الاستخدام
Query
Response
toBool
expr— تعبير يُرجع رقمًا أو سلسلة نصية. بالنسبة إلى السلاسل النصية، يقبل ‘true’ أو ‘false’ (غير حساس لحالة الأحرف).(U)Int*أوFloat*أوStringأوExpression
true أو false بناءً على تقييم الوسيط. Bool
أمثلة
مثال على الاستخدام
Query
Response
toDate
Date.
يدعم التحويل من الأنواع String وFixedString وDateTime أو من الأنواع الرقمية.
البنية
x— قيمة الإدخال المطلوب تحويلها.StringأوFixedStringأوDateTimeأو(U)Int*أوFloat*
Date
أمثلة
تحويل String إلى Date
Query
Response
Query
Response
Query
Response
toDate32
toDate32 يعيد القيم الحدّية التي يدعمها Date32.
إذا كانت الوسيطة من النوع Date، فتُؤخذ حدودها في الاعتبار.
البنية
Date32
أمثلة
ضمن النطاق
Query
Response
Query
Response
toDate32OrDefault
toDate32OrDefault تُرجع قيمة الحد الأدنى التي يدعمها Date32. وإذا كان الوسيط من النوع Date، فتُؤخذ حدوده في الاعتبار. وتُرجع القيمة الافتراضية إذا كان الوسيط غير صالح.
البنية
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.Stringأو(U)Int*أوFloat*default— اختياري. القيمة الافتراضية التي ستُعاد إذا تعذّر التحليل.Date32
Date32
أمثلة
تحويل ناجح
Query
Response
Query
Response
toDate32OrNull
NULL إذا كانت الوسيطة غير صالحة.
وهو مماثل لـ toDate32، لكنه يعيد NULL إذا كانت الوسيطة غير صالحة.
البنية
x— تمثيل نصي لتاريخ.String
NULL. Date32 أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toDate32OrZero
x— تمثيل نصي لتاريخ.String
Date32 عند النجاح، وإلا تُعيد الحد الأدنى لقيم Date32 (1900-01-01). Date32
أمثلة
مثال على الاستخدام
Query
Response
toDateOrDefault
expr— تعبير يُرجع عددًا أو تمثيلًا نصيًا لعدد.Stringأو(U)Int*أوFloat*default— اختياري. القيمة الافتراضية التي تُعاد إذا تعذّر التحليل.Date
Date
أمثلة
تحويل ناجح
Query
Response
Query
Response
toDateOrNull
Date، لكنه يعيد NULL إذا تلقّى وسيطة غير صالحة.
وهو مثل toDate، لكنه يعيد NULL إذا تلقّى وسيطة غير صالحة.
الصياغة
x— تمثيل نصي لتاريخ.String
Date عند النجاح، وإلا NULL. Date أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toDateOrZero
Date، لكنه يعيد الحد الأدنى لـ Date عند تمرير وسيطة غير صالحة.
وهو مماثل لـ toDate، لكنه يعيد الحد الأدنى لـ Date عند تمرير وسيطة غير صالحة.
انظر أيضًا:
البنية
x— تمثيل نصي لتاريخ.String
1970-01-01). Date
أمثلة
مثال على الاستخدام
Query
Response
toDateTime
إذا كانت
expr رقمًا، فسيُفسَّر على أنه عدد الثواني منذ بداية Unix Epoch (أي كـ Unix timestamp).
إذا كانت expr من النوع String، فقد تُفسَّر على أنها Unix timestamp أو على أنها تمثيل نصي لتاريخ أو لتاريخ مع وقت.
لذلك، يُعطَّل صراحةً تحليل التمثيلات النصية للأرقام القصيرة (حتى 4 أرقام) بسبب الالتباس؛ فعلى سبيل المثال، قد تكون السلسلة '1999' سنةً (تمثيلًا نصيًا غير مكتمل لـ Date / DateTime) أو unix timestamp. ويُسمح بالسلاسل الرقمية الأطول.DateTime
أمثلة
مثال على الاستخدام
Query
Response
toDateTime32
DateTime.
يدعم التحويل من String وFixedString وDate وDate32 وDateTime أو من الأنواع الرقمية ((U)Int* وFloat* وDecimal).
يوفّر DateTime32 نطاقًا أوسع مقارنةً بـ DateTime، إذ يدعم التواريخ من 1900-01-01 إلى 2299-12-31.
الصياغة
x— قيمة الإدخال المراد تحويلها.StringأوFixedStringأوUInt*أوFloat*أوDateأوDateTimeأوDateTime64timezone— اختياري. المنطقة الزمنية لقيمةDateTimeالمُعادة.String
DateTime
أمثلة
القيمة ضمن النطاق
Query
Response
Query
Response
Query
Response
toDateTime64
DateTime64.
الصيغة
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.تعبيرscale— مقدار النبضة (الدقة): 10^(-scale) ثانية.UInt8timezone— اختياري. المنطقة الزمنية لكائنDateTime64المحدد.String
DateTime64
أمثلة
القيمة ضمن النطاق
Query
Response
Query
Response
Query
Response
toDateTime64OrDefault
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.Stringأو(U)Int*أوFloat*scale— حجم الـ tick (الدقة): 10^-precision ثانية.UInt8timezone— اختياري. المنطقة الزمنية.Stringdefault— اختياري. القيمة الافتراضية التي ستُعاد إذا لم تنجح عملية التحليل.DateTime64
DateTime64
أمثلة
تحويل ناجح
Query
Response
Query
Response
toDateTime64OrNull
DateTime64، لكنه يعيد NULL إذا كانت الوسيطة غير صالحة.
وهو مماثل لـ toDateTime64، لكنه يعيد NULL إذا كانت الوسيطة غير صالحة.
البنية
x— تمثيل نصي لتاريخ ووقت بدقة أجزاء الثانية.String
DateTime64 عند النجاح، وإلا NULL. DateTime64 أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toDateTime64OrZero
x— تمثيل نصي لتاريخ ووقت بدقة أجزاء من الثانية.String
1970-01-01 00:00:00.000). DateTime64
أمثلة
مثال على الاستخدام
Query
Response
toDateTimeOrDefault
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.Stringأو(U)Int*أوFloat*timezone— اختياري. المنطقة الزمنية.Stringdefault— اختياري. القيمة الافتراضية التي تُعاد إذا تعذّر التحليل.DateTime
DateTime
أمثلة
تحويل ناجح
Query
Response
Query
Response
toDateTimeOrNull
DateTime، لكنه يُرجع NULL إذا تلقّى وسيطًا غير صالح.
وهو مماثل لـ toDateTime، لكنه يُرجع NULL إذا تلقّى وسيطًا غير صالح.
البنية
x— تمثيل نصي لتاريخ ووقت.String
DateTime عند النجاح، وإلا NULL. DateTime أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toDateTimeOrZero
x— تمثيل نصي لتاريخ ووقت.String
1970-01-01 00:00:00). DateTime
أمثلة
مثال على الاستخدام
Query
Response
toDecimal128
Decimal(38, S) بمقياس S.
يرفع استثناءً عند حدوث خطأ.
الوسيطات المدعومة:
- القيم أو تمثيلاتها النصية من النوع (U)Int*.
- القيم أو تمثيلاتها النصية من النوع Float*.
- القيم أو التمثيلات النصية لقيم Float*
NaNوInf(دون حساسية لحالة الأحرف). - التمثيلات النصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toDecimal128('0xc0fe', 1);.
قد يحدث تجاوز إذا كانت قيمة
expr تتجاوز حدود Decimal128:(-1*10^(38 - S), 1*10^(38 - S)).
تُهمَل الأرقام الزائدة في الجزء الكسري (من دون تقريب).
تؤدي الأرقام الزائدة في الجزء الصحيح إلى رفع استثناء.expr— تعبير يُرجع عددًا أو تمثيلًا نصيًا لعدد.ExpressionS— معامل المقياس بين 0 و38، ويُحدِّد عدد الخانات التي يمكن أن يحتوي عليها الجزء الكسري من العدد.UInt8
Decimal(38, S) Decimal128(S)
أمثلة
مثال على الاستخدام
Query
Response
toDecimal128OrDefault
toDecimal128، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Decimal(38, S)، لكنها تُرجع القيمة الافتراضية في حال حدوث خطأ.
البنية
expr— تمثيل نصي لرقم.StringS— معامل المقياس بين 0 و38، ويحدد عدد الخانات التي يمكن أن يحتوي عليها الجزء الكسري من الرقم.UInt8default— اختياري. القيمة الافتراضية التي تُعاد إذا تعذّر التحليل إلى النوع Decimal128(S).Decimal128(S)
Decimal128(S)
أمثلة
تحويل ناجح
Query
Response
Query
Response
toDecimal128OrNull
Decimal(38, S)، لكنه يعيد NULL في حال حدوث خطأ.
وهو يشبه toDecimal128، لكنه يعيد NULL بدلًا من رفع استثناء عند حدوث أخطاء في التحويل.
الوسيطات المدعومة:
- القيم أو التمثيلات النصية من النوع (U)Int*.
- القيم أو التمثيلات النصية من النوع Float*.
NULL):
- القيم أو التمثيلات النصية لقيم Float*
NaNوInf(غير حساسة لحالة الأحرف). - التمثيلات النصية للقيم الثنائية والسداسية العشرية.
- القيم التي تتجاوز حدود
Decimal128:(-1*10^(38 - S), 1*10^(38 - S)).
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.تعبيرS— معامل المقياس بين 0 و38، ويحدّد عدد الخانات التي يمكن أن يحتوي عليها الجزء الكسري من الرقم.UInt8
NULL. Decimal128(S) أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toDecimal128OrZero
0 في حال حدوث خطأ.
يشبه toDecimal128، لكنه يعيد 0 بدلًا من إطلاق استثناء عند حدوث أخطاء في التحويل.
الوسائط المدعومة:
- القيم أو تمثيلاتها النصية من النوع (U)Int*.
- القيم أو تمثيلاتها النصية من النوع Float*.
0):
- القيم أو التمثيلات النصية لقيم Float*
NaNوInf(دون حساسية لحالة الأحرف). - التمثيلات النصية للقيم الثنائية والست عشرية.
إذا تجاوزت قيمة الإدخال حدود
Decimal128:(-1*10^(38 - S), 1*10^(38 - S))، فستعيد الدالة 0.expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.تعبيرS— معامل المقياس بين 0 و38، ويحدّد عدد الخانات التي يمكن أن يحتوي عليها الجزء الكسري من الرقم.UInt8
0. Decimal128(S)
أمثلة
الاستخدام الأساسي
Query
Response
toDecimal256
Decimal(76, S) ذات مقياس S. يطلق استثناءً عند حدوث خطأ.
الوسيطات المدعومة:
- القيم أو تمثيلاتها النصية من النوع (U)Int*.
- القيم أو تمثيلاتها النصية من النوع Float*.
- القيم أو تمثيلاتها النصية لقيم Float*
NaNوInf(من دون حساسية لحالة الأحرف). - التمثيلات النصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toDecimal256('0xc0fe', 1);.
قد يحدث تجاوز إذا كانت قيمة
expr تتجاوز حدود Decimal256:(-1*10^(76 - S), 1*10^(76 - S)).
تُهمَل الأرقام الزائدة في الجزء الكسري (من دون تقريب).
وتؤدي الأرقام الزائدة في الجزء الصحيح إلى إطلاق استثناء.expr— تعبير يُرجِع عددًا أو تمثيلًا نصيًا لعدد.تعبيرS— معامل المقياس بين 0 و76، ويحدّد عدد الأرقام التي يمكن أن يحتوي عليها الجزء الكسري من العدد.UInt8
Decimal(76, S). Decimal256(S)
أمثلة
مثال على الاستخدام
Query
Response
toDecimal256OrDefault
toDecimal256، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Decimal(76, S)، لكنها تُرجع القيمة الافتراضية عند حدوث خطأ.
الصيغة
expr— تمثيل نصي لرقم.StringS— معامل المقياس بين 0 و76، ويحدد عدد الخانات التي يمكن أن يحتوي عليها الجزء الكسري من الرقم.UInt8default— اختياري. القيمة الافتراضية التي تُعاد إذا تعذّر التحليل إلى النوع Decimal256(S).Decimal256(S)
Decimal256(S)
أمثلة
تحويل ناجح
Query
Response
Query
Response
toDecimal256OrNull
Decimal(76, S)، لكنها تُرجع NULL في حال حدوث خطأ.
تشبه toDecimal256، لكنها تُرجع NULL بدلًا من إطلاق استثناء عند حدوث أخطاء في التحويل.
الوسائط المدعومة:
- القيم أو التمثيلات النصية من النوع (U)Int*.
- القيم أو التمثيلات النصية من النوع Float*.
NULL):
- القيم أو التمثيلات النصية لقيم Float*
NaNوInf(بدون حساسية لحالة الأحرف). - التمثيلات النصية للقيم الثنائية والسداسية العشرية.
- القيم التي تتجاوز حدود
Decimal256:(-1 * 10^(76 - S), 1 * 10^(76 - S)).
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.تعبيرS— معلمة المقياس بين 0 و76، وتحدد عدد الخانات التي يمكن أن يتضمنها الجزء الكسري من الرقم.UInt8
NULL. Decimal256(S) أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toDecimal256OrZero
0 في حال حدوث خطأ.
يشبه toDecimal256، لكنه يعيد 0 بدلًا من رفع استثناء عند حدوث أخطاء في التحويل.
الوسيطات المدعومة:
- القيم أو التمثيلات النصية من النوع (U)Int*.
- القيم أو التمثيلات النصية من النوع Float*.
0):
- القيم أو التمثيلات النصية لقيم Float*
NaNوInf(غير حساسة لحالة الأحرف). - التمثيلات النصية للقيم الثنائية والستّ عشرية.
إذا تجاوزت قيمة الإدخال حدود
Decimal256:(-1*10^(76 - S), 1*10^(76 - S))، فستعيد الدالة 0.expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.ExpressionS— معامل المقياس بين 0 و76، ويحدّد عدد الخانات التي يمكن أن يتكوّن منها الجزء الكسري من الرقم.UInt8
0. Decimal256(S)
أمثلة
مثال على الاستخدام
Query
Response
toDecimal32
Decimal(9, S) ذات مقياس S. ويطلق استثناءً عند حدوث خطأ.
الوسائط المدعومة:
- قيم أو تمثيلات نصية من النوع (U)Int*.
- قيم أو تمثيلات نصية من النوع Float*.
- قيم أو تمثيلات نصية لقيم Float*
NaNوInf(من دون حساسية لحالة الأحرف). - تمثيلات نصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toDecimal32('0xc0fe', 1);.
قد يحدث تجاوز سعة إذا تجاوزت قيمة
expr حدود Decimal32:(-1*10^(9 - S), 1*10^(9 - S)).
تُهمَل الأرقام الزائدة في الجزء الكسري (من دون تقريب).
أما الأرقام الزائدة في الجزء الصحيح فتؤدي إلى استثناء.expr— تعبير يُرجع رقمًا أو سلسلة نصية تمثل رقمًا.تعبيرS— معامل المقياس بين 0 و9، ويحدّد عدد الخانات التي يمكن أن يتكوّن منها الجزء الكسري من الرقم.UInt8
Decimal(9, S) Decimal32(S)
أمثلة
مثال على الاستخدام
Query
Response
toDecimal32OrDefault
toDecimal32، تُحوِّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Decimal(9, S)، لكنها تُرجِع القيمة الافتراضية في حال حدوث خطأ.
البنية
expr— تمثيل نصي لرقم.StringS— معامل المقياس بين 0 و9، ويحدّد عدد الخانات التي يمكن أن يحتوي عليها الجزء الكسري من الرقم.UInt8default— اختياري. القيمة الافتراضية التي ستُعاد إذا تعذّر التحليل إلى النوع Decimal32(S).Decimal32(S)
Decimal32(S)
أمثلة
تحويل ناجح
Query
Response
Query
Response
toDecimal32OrNull
Decimal(9, S)، لكنها تُرجع NULL في حال حدوث خطأ.
تشبه toDecimal32، لكنها تُرجع NULL بدلًا من إطلاق استثناء عند حدوث أخطاء في التحويل.
الوسيطات المدعومة:
- القيم أو تمثيلاتها النصية من النوع (U)Int*.
- القيم أو تمثيلاتها النصية من النوع Float*.
NULL):
- القيم أو تمثيلاتها النصية من قيم Float* وهي
NaNوInf(غير حساسة لحالة الأحرف). - التمثيلات النصية للقيم الثنائية والسداسية العشرية.
- القيم التي تتجاوز حدود
Decimal32:(-1*10^(9 - S), 1*10^(9 - S)).
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.تعبيرS— معامل المقياس بين 0 و9، ويحدّد عدد الأرقام التي يمكن أن يحتويها الجزء الكسري من الرقم.UInt8
NULL. Decimal32(S) أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toDecimal32OrZero
0 في حال حدوث خطأ.
تشبه toDecimal32، لكنها تُرجِع 0 بدلًا من إطلاق استثناء عند حدوث أخطاء في التحويل.
الوسائط المدعومة:
- القيم أو تمثيلاتها النصية من النوع (U)Int*.
- القيم أو تمثيلاتها النصية من النوع Float*.
0):
- القيم أو التمثيلات النصية لقيم Float*
NaNوInf(دون حساسية لحالة الأحرف). - التمثيلات النصية للقيم الثنائية والسداسية عشرية.
إذا تجاوزت قيمة الإدخال حدود
Decimal32:(-1*10^(9 - S), 1*10^(9 - S))، فستُرجِع الدالة 0.expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.ExpressionS— معامل المقياس بين 0 و9، ويحدّد عدد الخانات التي يمكن أن يحتويها الجزء الكسري من الرقم.UInt8
0. Decimal32(S)
أمثلة
مثال على الاستخدام
Query
Response
toDecimal64
Decimal(18, S) وبمقياس S.
يرفع استثناءً في حال حدوث خطأ.
الوسائط المدعومة:
- القيم أو التمثيلات النصية من النوع (U)Int*.
- القيم أو التمثيلات النصية من النوع Float*.
- القيم أو التمثيلات النصية لقيم Float*
NaNوInf(غير حساسة لحالة الأحرف). - التمثيلات النصية للقيم الثنائية والست عشرية، مثل
SELECT toDecimal64('0xc0fe', 1);.
قد يحدث تجاوز إذا كانت قيمة
expr تتخطى حدود Decimal64:(-1*10^(18 - S), 1*10^(18 - S)).
تُهمَل الخانات الزائدة في الجزء الكسري (من دون تقريب).
تؤدي الخانات الزائدة في الجزء الصحيح إلى رفع استثناء.expr— تعبير يُرجِع رقمًا أو تمثيلًا نصيًا لرقم.ExpressionS— معامل المقياس بين 0 و18، ويحدّد عدد الخانات التي يمكن أن يحتوي عليها الجزء الكسري من الرقم.UInt8
Decimal(18, S)
أمثلة
مثال على الاستخدام
Query
Response
toDecimal64OrDefault
toDecimal64، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Decimal(18, S)، لكنها تُرجع القيمة الافتراضية عند حدوث خطأ.
الصيغة
expr— تمثيل نصي لرقم.StringS— معامل المقياس بين 0 و18، ويحدد عدد الخانات التي يمكن أن يحتوي عليها الجزء الكسري من الرقم.UInt8default— اختياري. القيمة الافتراضية التي تُعاد إذا تعذّر التحويل إلى النوع Decimal64(S).Decimal64(S)
Decimal64(S)
أمثلة
تحويل ناجح
Query
Response
Query
Response
toDecimal64OrNull
NULL عند حدوث خطأ.
وهو يشبه toDecimal64، لكنه يُرجع NULL بدلًا من إطلاق استثناء عند حدوث أخطاء في التحويل.
الوسائط المدعومة:
- القيم أو التمثيلات النصية من النوع (U)Int*.
- القيم أو التمثيلات النصية من النوع Float*.
NULL):
- القيم
NaNوInfمن النوع Float*، أو تمثيلاتها النصية (دون تمييز بين الأحرف الكبيرة والصغيرة). - التمثيلات النصية للقيم الثنائية والست عشرية.
- القيم التي تتجاوز حدود
Decimal64:(-1*10^(18 - S), 1*10^(18 - S)).
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.تعبيرS— معامل المقياس بين 0 و18، ويحدّد عدد الخانات التي يمكن أن يحتوي عليها الجزء الكسري من الرقم.UInt8
Decimal(18, S) عند النجاح، وإلا NULL. Decimal64(S) أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toDecimal64OrZero
0 عند حدوث خطأ.
وهو يشبه toDecimal64، لكنه يعيد 0 بدلًا من إطلاق استثناء عند حدوث أخطاء في التحويل.
الوسيطات المدعومة:
- القيم أو التمثيلات النصية من النوع (U)Int*.
- القيم أو التمثيلات النصية من النوع Float*.
0):
- القيم أو التمثيلات النصية لقيم Float*
NaNوInf(دون تمييز بين الأحرف الكبيرة والصغيرة). - التمثيلات النصية للقيم الثنائية والسداسية العشرية.
إذا تجاوزت قيمة الإدخال حدود
Decimal64:(-1*10^(18 - S), 1*10^(18 - S))، فستعيد الدالة 0.expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.تعبيرS— معامل المقياس بين 0 و18، ويحدّد عدد الأرقام التي يمكن أن يحتوي عليها الجزء الكسري من الرقم.UInt8
0. Decimal64(S)
أمثلة
مثال على الاستخدام
Query
Response
toDecimalString
number— القيمة العددية المراد تحويلها إلى سلسلة نصية. يمكن أن تكون من أي نوع عددي (Int أو UInt أو Float أو Decimal).Int8أوInt16أوInt32أوInt64أوUInt8أوUInt16أوUInt32أوUInt64أوFloat32أوFloat64أوDecimalscale— عدد الخانات التي ستُعرض في الجزء الكسري. ستُقرَّب النتيجة عند الحاجة.UInt8
String
أمثلة
تقريب عدد وتنسيقه
Query
Response
Query
Response
Query
Response
toFixedString
String إلى النوع FixedString(N) (سلسلة نصية ذات طول ثابت مقداره N).
إذا كانت السلسلة النصية تحتوي على عدد بايتات أقل من N، فتُستكمل من اليمين ببايتات null.
إذا كانت السلسلة النصية تحتوي على عدد بايتات أكبر من N، يُطرح استثناء.
البنية
s— السلسلة المطلوب تحويلها.StringN— طول قيمة FixedString الناتجة.const UInt*
FixedString(N)
أمثلة
مثال على الاستخدام
Query
Response
toFloat32
- قيم من النوع (U)Int*.
- التمثيلات النصية لـ (U)Int8/16/32/128/256.
- قيم من النوع Float*، بما في ذلك
NaNوInf. - التمثيلات النصية لـ Float*، بما في ذلك
NaNوInf(غير حسّاسة لحالة الأحرف).
- التمثيلات النصية للقيم الثنائية والستّ عشرية، على سبيل المثال
SELECT toFloat32('0xc0fe');.
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.تعبير
Float32
أمثلة
مثال للاستخدام
Query
Response
toFloat32OrDefault
toFloat32، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Float32، لكنها تُرجع القيمة الافتراضية عند حدوث خطأ.
إذا لم يتم تمرير قيمة default، فسيُرجع 0 عند حدوث خطأ.
الصيغة
expr— تعبير يُرجع عددًا أو تمثيلًا نصيًا لعدد.Stringأو(U)Int*أوFloat*default— اختياري. القيمة الافتراضية التي ستُعاد إذا لم ينجح التحليل.Float32
Float32
أمثلة
تحويل ناجح
Query
Response
Query
Response
toFloat32OrNull
NULL في حال حدوث خطأ.
تشبه toFloat32، لكنها تُرجع NULL بدلًا من إطلاق استثناء عند حدوث أخطاء في التحويل.
الوسيطات المدعومة:
- قيم من النوع (U)Int*.
- تمثيلات نصية لـ (U)Int8/16/32/128/256.
- قيم من النوع Float*، بما في ذلك
NaNوInf. - تمثيلات نصية لـ Float*، بما في ذلك
NaNوInf(غير حساسة لحالة الأحرف).
NULL):
- تمثيلات نصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toFloat32OrNull('0xc0fe');. - تنسيقات سلاسل نصية غير صالحة.
x— تمثيل نصي لعدد.String
Float32 عند النجاح، وإلا NULL. Float32 أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toFloat32OrZero
0 في حال حدوث خطأ.
يشبه toFloat32، لكنه يُرجع 0 بدلًا من إطلاق استثناء عند حدوث أخطاء في التحويل.
انظر أيضًا:
الصيغة
x— تمثيل نصي لعدد.String
0. Float32
أمثلة
مثال على الاستخدام
Query
Response
toFloat64
Float64.
يُطلق استثناءً في حال حدوث خطأ.
الوسيطات المدعومة:
- قيم من النوع (U)Int*.
- التمثيلات النصية للقيم من النوع (U)Int8/16/32/128/256.
- قيم من النوع Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم من النوع Float*، بما في ذلك
NaNوInf(من دون حساسية لحالة الأحرف).
- التمثيلات النصية للقيم الثنائية والسداسية العشرية، على سبيل المثال
SELECT toFloat64('0xc0fe');.
expr— تعبير يُرجع عددًا أو تمثيلًا نصيًا لعدد.تعبير
Float64
أمثلة
مثال على الاستخدام
Query
Response
toFloat64OrDefault
toFloat64، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Float64، لكنها تُرجع القيمة الافتراضية في حال حدوث خطأ.
إذا لم يتم تمرير قيمة default، فسيتم إرجاع 0 عند حدوث خطأ.
الصياغة
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.Stringأو(U)Int*أوFloat*default— اختياري. القيمة الافتراضية التي تُعاد إذا لم تنجح عملية التحليل.Float64
Float64 عند النجاح، وإلا فيُرجع القيمة الافتراضية إذا تم تمريرها، أو 0 إذا لم يتم تمريرها. Float64
أمثلة
تحويل ناجح
Query
Response
Query
Response
toFloat64OrNull
NULL عند حدوث خطأ.
يشبه toFloat64، لكنه يعيد NULL بدلًا من إطلاق استثناء عند حدوث أخطاء في التحويل.
الوسيطات المدعومة:
- القيم من النوع (U)Int*.
- التمثيلات النصية لـ (U)Int8/16/32/128/256.
- القيم من النوع Float*، بما في ذلك
NaNوInf. - التمثيلات النصية من النوع Float*، بما في ذلك
NaNوInf(دون حساسية لحالة الأحرف).
NULL):
- التمثيلات النصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toFloat64OrNull('0xc0fe');. - سلاسل نصية بتنسيق غير صالح.
x— تمثيل نصي لرقم.String
Float64 عند النجاح، وإلا NULL. Float64 أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toFloat64OrZero
0 في حال حدوث خطأ.
يشبه toFloat64، لكنه يعيد 0 بدلًا من رفع استثناء عند حدوث أخطاء في التحويل.
انظر أيضًا:
البنية
x— تمثيل نصّي لرقم.String
Float64 عند النجاح، وإلا 0. Float64
أمثلة
مثال على الاستخدام
Query
Response
toInt128
- القيم أو تمثيلاتها النصية من النوع (U)Int*.
- القيم من النوع Float*.
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toInt128('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود Int128، فقد يحدث تجاوز علوي أو سفلي في النتيجة.
ولا يُعدّ ذلك خطأً.
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.تعبير
Int128
أمثلة
مثال على الاستخدام
Query
Response
toInt128OrDefault
toInt128، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Int128، لكنها تُرجع القيمة الافتراضية في حال حدوث خطأ.
إذا لم يتم تمرير قيمة default، فستُرجع 0 عند حدوث خطأ.
البنية
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.Stringأو(U)Int*أوFloat*default— اختياري. القيمة الافتراضية التي تُرجع إذا فشلت عملية التحليل.Int128
Int128
أمثلة
تحويل ناجح
Query
Response
Query
Response
toInt128OrNull
toInt128، تحوِّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Int128، لكنها تُرجع NULL عند حدوث خطأ.
الوسيطات المدعومة:
- التمثيلات النصية لقيم (U)Int*.
NULL):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والست عشرية، على سبيل المثال
SELECT toInt128OrNull('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود Int128، يحدث overflow أو underflow في النتيجة.
ولا يُعدّ ذلك خطأً.
x— تمثيل نصي لرقم.String
NULL إذا تعذّر التحويل. Int128 أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toInt128OrZero
0 في حال حدوث خطأ.
وهو يشبه toInt128، لكنه يعيد 0 بدلًا من إطلاق استثناء.
انظر أيضًا:
البنية
x— قيمة الإدخال المراد تحويلها.StringأوFixedStringأوFloat*أوDecimalأو(U)Int*أوDateأوDateTime
0 إذا فشل التحويل. Int128
أمثلة
مثال على الاستخدام
Query
Response
Query
Response
toInt16
Int16.
تُطلق استثناءً عند حدوث خطأ.
الوسيطات المدعومة:
- القيم أو التمثيلات النصية من النوع (U)Int*.
- القيم من النوع Float*.
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toInt16('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود Int16، يحدث overflow أو underflow في النتيجة.
ولا يُعدّ ذلك خطأً.
على سبيل المثال:
SELECT toInt16(32768) == -32768;.تستخدم الدالة rounding towards zero، ما يعني أنها تحذف الخانات الكسرية من الأرقام.
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.تعبير
Int16
أمثلة
مثال على الاستخدام
Query
Response
toInt16OrDefault
toInt16، تُحوِّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Int16، لكنها تُرجِع القيمة الافتراضية عند حدوث خطأ.
إذا لم يتم تمرير قيمة default، فستُرجَع القيمة 0 عند حدوث خطأ.
البنية
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.Stringأو(U)Int*أوFloat*default— اختياري. القيمة الافتراضية التي تُعاد إذا تعذّر التحليل.Int16
Int16
أمثلة
تحويل ناجح
Query
Response
Query
Response
toInt16OrNull
toInt16، تُحوِّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Int16، لكنها تُعيد NULL عند حدوث خطأ.
الوسيطات المدعومة:
- التمثيلات النصية لقيم (U)Int*.
NULL):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والستّ عشرية، مثل
SELECT toInt16OrNull('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود Int16، يحدث فيض أو نقص في النتيجة.
ولا يُعدّ ذلك خطأً.
x— تمثيل نصي لرقم.String
Int16، أو NULL إذا تعذر التحويل. Int16 أو NULL
أمثلة
مثال للاستخدام
Query
Response
toInt16OrZero
toInt16، تحوِّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Int16، لكنها تُرجع 0 عند حدوث خطأ.
الوسيطات المدعومة:
- التمثيلات النصية لقيم (U)Int*.
0):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والستّ عشرية، على سبيل المثال
SELECT toInt16OrZero('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود Int16، يحدث overflow أو underflow في النتيجة.
ولا يُعدّ ذلك خطأً.
x— تمثيل نصي لعدد.String
0 إذا تعذّر التحويل. Int16
أمثلة
مثال على الاستخدام
Query
Response
toInt256
- القيم أو التمثيلات النصية من النوع (U)Int*.
- القيم من النوع Float*.
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toInt256('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود Int256، فقد يحدث فيض أو نقص في النتيجة.
لا يُعدّ ذلك خطأً.
expr— تعبير يُرجع عددًا أو تمثيلًا نصيًا لعدد.تعبير
Int256
أمثلة
مثال على الاستخدام
Query
Response
toInt256OrDefault
toInt256، تحوِّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Int256، لكنها تُرجع القيمة الافتراضية عند حدوث خطأ.
إذا لم يتم تمرير قيمة default، فستُرجِع 0 عند حدوث خطأ.
الصياغة
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.Stringأو(U)Int*أوFloat*default— اختياري. القيمة الافتراضية التي تُعاد إذا تعذّر التحليل.Int256
Int256
أمثلة
تحويل ناجح
Query
Response
Query
Response
toInt256OrNull
toInt256، تحوّل هذه الدالة قيمة إدخال إلى قيمة من النوع Int256، لكنها تعيد NULL عند حدوث خطأ.
الوسيطات المدعومة:
- التمثيلات النصية لقيم (U)Int*.
NULL):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، على سبيل المثال
SELECT toInt256OrNull('0xc0fe');.
إذا تعذر تمثيل قيمة الإدخال ضمن حدود Int256، يحدث overflow أو underflow في النتيجة.
ولا يُعد ذلك خطأً.
x— تمثيل نصي لرقم.String
NULL إذا تعذّر التحويل. Int256 أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toInt256OrZero
0 في حال حدوث خطأ.
يشبه toInt256، لكنه يعيد 0 بدلًا من إثارة استثناء.
انظر أيضًا:
البنية
x— قيمة الإدخال المراد تحويلها.StringأوFixedStringأوFloat*أوDecimalأو(U)Int*أوDateأوDateTime
0 إذا فشل التحويل. Int256
أمثلة
مثال على الاستخدام
Query
Response
Query
Response
toInt32
Int32.
تطرح استثناءً في حال حدوث خطأ.
الوسيطات المدعومة:
- القيم أو التمثيلات النصية من النوع (U)Int*.
- القيم من النوع Float*.
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والستّ عشرية، على سبيل المثال
SELECT toInt32('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود Int32، فستتجاوز النتيجة الحدّ الأعلى أو الأدنى للنطاق.
ولا يُعدّ ذلك خطأً.
على سبيل المثال:
SELECT toInt32(2147483648) == -2147483648;تستخدم الدالة التقريب نحو الصفر، ما يعني أنها تحذف الخانات الكسرية من الأعداد.
expr— تعبير يُرجع عددًا أو تمثيلًا نصيًا لعدد.Expression
Int32
أمثلة
مثال للاستخدام
Query
Response
toInt32OrDefault
toInt32، تحوِّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Int32، لكنها تُرجِع القيمة الافتراضية عند حدوث خطأ.
إذا لم يتم تمرير قيمة default، فستُرجِع 0 عند حدوث خطأ.
البنية
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.Stringأو(U)Int*أوFloat*default— اختياري. القيمة الافتراضية التي تُرجع إذا فشل التحليل.Int32
Int32
أمثلة
تحويل ناجح
Query
Response
Query
Response
toInt32OrNull
toInt32، تحوِّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Int32، لكنها تُرجع NULL عند حدوث خطأ.
الوسائط المدعومة:
- التمثيلات النصية لقيم (U)Int*.
NULL):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، على سبيل المثال
SELECT toInt32OrNull('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود Int32، يحدث تجاوز للحد الأعلى أو الأدنى في النتيجة.
ولا يُعدّ ذلك خطأ.
x— تمثيل نصي لرقم.String
NULL إذا تعذّر التحويل. Int32 أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toInt32OrZero
toInt32، تُحوِّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Int32، لكنها تُرجع 0 عند حدوث خطأ.
الوسيطات المدعومة:
- التمثيلات النصية لقيم (U)Int*.
0):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، على سبيل المثال
SELECT toInt32OrZero('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود Int32، فسيحدث تجاوز سعة أو نقص تمثيل في النتيجة.
ولا يُعدّ ذلك خطأً.
x— تمثيل نصي لرقم.String
0 إذا تعذّر التحويل. Int32
أمثلة
مثال على الاستخدام
Query
Response
toInt64
Int64.
يطرح استثناءً في حال حدوث خطأ.
الوسائط المدعومة:
- القيم أو التمثيلات النصية من النوع (U)Int*.
- القيم من النوع Float*.
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toInt64('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود Int64، فقد يحدث تجاوز علوي أو سفلي في النتيجة.
ولا يُعدّ ذلك خطأً.
على سبيل المثال:
SELECT toInt64(9223372036854775808) == -9223372036854775808;تستخدم الدالة التقريب نحو الصفر، ما يعني أنها تحذف الأرقام الكسرية من الأعداد.
expr— تعبير يُرجِع رقمًا أو تمثيلًا نصيًا لرقم. المدعوم: القيم أو التمثيلات النصية من النوع (U)Int*، والقيم من النوع Float*. غير المدعوم: التمثيلات النصية لقيم Float*، بما في ذلك NaN وInf، والتمثيلات النصية للقيم الثنائية والسداسية العشرية.تعبير
Int64
أمثلة
مثال على الاستخدام
Query
Response
toInt64OrDefault
toInt64، تحوِّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Int64، لكنها تُرجع القيمة الافتراضية عند حدوث خطأ.
إذا لم يتم تمرير قيمة default، فستُرجع 0 عند حدوث خطأ.
البنية
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.Stringأو(U)Int*أوFloat*default— اختياري. القيمة الافتراضية التي تُعاد إذا تعذّر التحليل.Int64
Int64
أمثلة
تحويل ناجح
Query
Response
Query
Response
toInt64OrNull
toInt64، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Int64، لكنها تعيد NULL في حال حدوث خطأ.
الوسيطات المدعومة:
- التمثيلات النصية لقيم (U)Int*.
NULL):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toInt64OrNull('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود Int64، يحدث تجاوز للحد الأعلى أو الأدنى في النتيجة.
ولا يُعد ذلك خطأ.
x— تمثيل نصي لعدد.String
NULL إذا تعذر التحويل. Int64 أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toInt64OrZero
0 في حال حدوث خطأ.
يشبه toInt64، لكنه يعيد 0 بدلًا من إطلاق استثناء.
انظر أيضًا:
الصياغة
x— قيمة الإدخال المراد تحويلها.StringأوFixedStringأوFloat*أوDecimalأو(U)Int*أوDateأوDateTime
0 إذا فشل التحويل. Int64
أمثلة
مثال على الاستخدام
Query
Response
Query
Response
toInt8
Int8.
تُطلق استثناءً في حال حدوث خطأ.
الوسيطات المدعومة:
- القيم أو التمثيلات النصية من النوع (U)Int*.
- القيم من النوع Float*.
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toInt8('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود Int8، يحدث تجاوز سعة أو نقص سعة في النتيجة.
ولا يُعد ذلك خطأً.
على سبيل المثال:
SELECT toInt8(128) == -128;.تستخدم الدالة التقريب نحو الصفر، أي إنها تحذف الخانات الكسرية من الأرقام.
expr— تعبير يُرجع عددًا أو تمثيلًا نصيًا لعدد.تعبير
Int8
أمثلة
مثال على الاستخدام
Query
Response
toInt8OrDefault
toInt8، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Int8، لكنها تُرجع القيمة الافتراضية عند حدوث خطأ.
إذا لم يتم تمرير قيمة default، فستُرجع 0 عند حدوث خطأ.
الصيغة
expr—expressionيُرجع رقمًا أو تمثيلًا نصيًا لرقم.Stringأو(U)Int*أوFloat*default— اختياري. القيمة الافتراضية التي تُعاد إذا لم تنجح عملية التحليل.Int8
Int8
أمثلة
تحويل ناجح
Query
Response
Query
Response
toInt8OrNull
toInt8، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Int8، لكنها تُرجع NULL عند حدوث خطأ.
الوسيطات المدعومة:
- التمثيلات النصية لقيم (U)Int*.
NULL):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والستّ عشرية، مثل
SELECT toInt8OrNull('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود Int8، يحدث overflow أو underflow في النتيجة.
ولا يُعدّ ذلك خطأ.
x— تمثيل نصي لرقم.String
NULL إذا تعذّر التحويل. Int8 أو NULL
أمثلة
مثال للاستخدام
Query
Response
toInt8OrZero
toInt8، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع Int8، لكنها تعيد 0 عند حدوث خطأ.
الوسائط المدعومة:
- التمثيلات النصية لقيم (U)Int*.
0):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toInt8OrZero('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود Int8، يحدث تجاوز علوي أو سفلي في النتيجة.
ولا يُعدّ ذلك خطأ.
x— تمثيل نصي لرقم.String
Int8، وإلا فيُعيد 0 إذا لم ينجح التحويل. Int8
أمثلة
مثال على الاستخدام
Query
Response
toInterval
toIntervalSecond وtoIntervalMinute وtoIntervalDay وغيرها،
لكنه يتيح تحديد الوحدة ديناميكيًا بوصفها معامل String.
الصياغة
value— القيمة الرقمية التي تمثل عدد الوحدات. يمكن أن تكون من أي نوع رقمي.Int8أوInt16أوInt32أوInt64أوUInt8أوUInt16أوUInt32أوUInt64أوFloat32أوFloat64unit— وحدة الزمن. يجب أن تكون سلسلة نصية ثابتة. القيم الصالحة هي: ‘nanosecond’ و’microsecond’ و’millisecond’ و’second’ و’minute’ و’hour’ و’day’ و’week’ و’month’ و’quarter’ و’year’.String
Interval
أمثلة
إنشاء قيم Interval بوحدات مختلفة
Query
Response
Query
Response
Query
Response
toIntervalDay
n يومًا من نوع البيانات IntervalDay.
الصياغة
n— عدد الأيام. الأعداد الصحيحة أو تمثيلاتها النصية، وكذلك الأعداد العائمة.(U)Int*أوFloat*أوString
n أيام. Interval
أمثلة
مثال على الاستخدام
Query
Response
toIntervalHour
n ساعة من نوع البيانات IntervalHour.
الصياغة
n ساعة. Interval
أمثلة
مثال على الاستخدام
Query
Response
toIntervalMicrosecond
n ميكروثانية من نوع البيانات IntervalMicrosecond.
الصياغة
Interval مقدارها n ميكروثانية. Interval
أمثلة
مثال على الاستخدام
Query
Response
toIntervalMillisecond
n مللي ثانية من نوع البيانات IntervalMillisecond.
البنية
n مللي ثانية. Interval
أمثلة
مثال على الاستخدام
Query
Response
toIntervalMinute
n دقيقة من نوع البيانات IntervalMinute.
البنية
n دقيقة. Interval
أمثلة
مثال للاستخدام
Query
Response
toIntervalMonth
n شهرًا من نوع البيانات IntervalMonth.
البنية
n شهرًا. Interval
أمثلة
مثال استخدام
Query
Response
toIntervalNanosecond
n نانوثانية من نوع البيانات IntervalNanosecond.
الصياغة
n نانوثانية. Interval
أمثلة
مثال استخدام
Query
Response
toIntervalQuarter
n أرباع من نوع البيانات IntervalQuarter.
الصياغة
n من أرباع السنة. Interval
أمثلة
مثال على الاستخدام
Query
Response
toIntervalSecond
interval من n ثانية، من نوع البيانات IntervalSecond.
البنية
n— عدد الثواني. الأعداد الصحيحة أو تمثيلاتها النصية، والأعداد ذات الفاصلة العائمة.(U)Int*أوFloat*أوString
n ثانية. Interval
أمثلة
مثال على الاستخدام
Query
Response
toIntervalWeek
n أسبوعًا من نوع البيانات IntervalWeek.
الصياغة
n أسابيع. Interval
أمثلة
مثال على الاستخدام
Query
Response
toIntervalYear
n سنة من نوع البيانات IntervalYear.
الصيغة
n سنة. Interval
أمثلة
مثال على الاستخدام
Query
Response
toLowCardinality
expr— تعبير ينتج أحد أنواع البيانات المدعومة.StringأوFixedStringأوDateأوDateTimeأو(U)Int*أوFloat*
LowCardinality. LowCardinality
أمثلة
مثال على الاستخدام
Query
Response
toString
value— القيمة المراد تحويلها إلى سلسلة نصية.Anytimezone— اختياري. اسم المنطقة الزمنية لتحويل DateTime.String
String
أمثلة
مثال على الاستخدام
Query
Response
toStringCutToZero
\0) بمثابة مُنهِيات للسلاسل.
تكون هذه الدالة مفيدة لمعالجة السلاسل بأسلوب C أو البيانات الثنائية، حيث تشير البايتات الصفرية إلى نهاية المحتوى المفيد.
الصياغة
s— قيمة من النوع String أو FixedString المراد معالجتها.StringأوFixedString
String
أمثلة
مثال على الاستخدام
Query
Response
toTime
x— قيمة الإدخال المراد تحويلها.StringأوFixedStringأوDateTimeأو(U)Int*أوFloat*
Time
أمثلة
تحويل String إلى Time
Query
Response
Query
Response
Query
Response
toTime64
x— قيمة الإدخال المراد تحويلها.StringأوFixedStringأوDateTime64أو(U)Int*أوFloat*
Time64(6)
أمثلة
تحويل String إلى Time64
Query
Response
Query
Response
Query
Response
toTime64OrNull
Time64، ولكنه يعيد NULL في حال حدوث خطأ.
يشبه toTime64، لكنه يعيد NULL بدلًا من إطلاق استثناء عند حدوث أخطاء في التحويل.
انظر أيضًا:
البنية
x— تمثيل نصي لوقت بدقة أقل من الثانية.String
Time64 عند النجاح، وإلا NULL. Time64 أو NULL
أمثلة
مثال للاستخدام
Query
Response
toTime64OrZero
00:00:00.000 في حال حدوث خطأ.
يشبه toTime64، لكنه يُرجع 00:00:00.000 بدلًا من رفع استثناء عند حدوث أخطاء في التحويل.
البنية
x— تمثيل نصي لوقت بدقة أجزاء من الثانية.String
Time64 عند النجاح، وإلا 00:00:00.000. Time64
أمثلة
مثال على الاستخدام
Query
Response
toTimeOrNull
NULL في حال حدوث خطأ.
يشبه toTime، لكنه يعيد NULL بدلًا من طرح استثناء عند حدوث أخطاء في التحويل.
انظر أيضًا:
الصياغة
x— تمثيل نصي لوقت.String
NULL. Time أو NULL
أمثلة
مثال للاستخدام
Query
Response
toTimeOrZero
00:00:00 في حال حدوث خطأ.
يشبه toTime، لكنه يعيد 00:00:00 بدلًا من إطلاق استثناء عند حدوث أخطاء في التحويل.
الصيغة
x— تمثيل نصي لوقت.String
Time عند النجاح، وإلا 00:00:00.
أمثلة
مثال على الاستخدام
Query
Response
toUInt128
UInt128.
يطرح استثناءً في حال حدوث خطأ.
تستخدم الدالة التقريب باتجاه الصفر، ما يعني أنها تحذف الخانات الكسرية من الأعداد.
الوسيطات المدعومة:
- القيم أو التمثيلات النصية من النوع (U)Int*.
- القيم من النوع Float*.
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toUInt128('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود UInt128، فستحدث حالة تجاوز علوي أو سفلي في النتيجة.
ولا يُعد ذلك خطأً.
expr— تعبير يُرجع عددًا أو تمثيلًا نصيًا لعدد.تعبير
UInt128
أمثلة
مثال على الاستخدام
Query
Response
toUInt128OrDefault
toUInt128، تحوّل هذه الدالة قيمة مُدخلة إلى قيمة من النوع UInt128، لكنها تُرجع القيمة الافتراضية في حال حدوث خطأ.
إذا لم يتم تمرير قيمة default، فستُرجع 0 عند حدوث خطأ.
البنية
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.Stringأو(U)Int*أوFloat*default— اختياري. القيمة الافتراضية التي تُعاد إذا تعذّر التحليل.UInt128
UInt128
أمثلة
تحويل ناجح
Query
Response
Query
Response
toUInt128OrNull
toUInt128، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع UInt128، لكنها تُرجع NULL في حال حدوث خطأ.
الوسيطات المدعومة:
- التمثيلات النصية لقيم (U)Int*.
NULL):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toUInt128OrNull('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود
UInt128، يحدث overflow أو underflow في النتيجة.
ولا يُعدّ ذلك خطأً.x— تمثيل نصي لرقم.String
NULL إذا تعذّر التحويل. UInt128 أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toUInt128OrZero
toUInt128، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع UInt128، لكنها تُرجع 0 في حال حدوث خطأ.
الوسيطات المدعومة:
- التمثيلات النصية لقيم (U)Int*.
0):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، على سبيل المثال
SELECT toUInt128OrZero('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود
UInt128، يحدث تجاوز سعة أو نقص سعة في النتيجة.
ولا يُعدّ ذلك خطأً.x— تمثيل نصي لرقم.String
0 إذا فشلت عملية التحويل. UInt128
أمثلة
مثال على الاستخدام
Query
Response
toUInt16
UInt16.
تُطلق استثناءً في حال حدوث خطأ.
الوسيطات المدعومة:
- القيم أو التمثيلات النصية من النوع (U)Int*.
- القيم من النوع Float*.
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والست عشرية، مثل:
SELECT toUInt16('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود
UInt16، يحدث تجاوز أو نقص في النتيجة.
ولا يُعدّ ذلك خطأً.
على سبيل المثال: SELECT toUInt16(65536) == 0;.تستخدم الدالة التقريب باتجاه الصفر، ما يعني أنها تقطع الخانات الكسرية من الأعداد.
expr— تعبير يُرجع عددًا أو تمثيلًا نصيًا لعدد.تعبير
UInt16
أمثلة
مثال على الاستخدام
Query
Response
toUInt16OrDefault
toUInt16، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع UInt16، لكنها تُرجِع القيمة الافتراضية في حال حدوث خطأ.
إذا لم يتم تمرير قيمة default، فستُرجَع القيمة 0 عند حدوث خطأ.
الصياغة
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.Stringأو(U)Int*أوFloat*default— اختياري. القيمة الافتراضية التي تُعاد إذا تعذّر التحليل.UInt16
UInt16
أمثلة
تحويل ناجح
Query
Response
Query
Response
toUInt16OrNull
toUInt16، تحوّل هذه الدالة قيمة مُدخلة إلى قيمة من النوع UInt16، لكنها تُرجع NULL عند حدوث خطأ.
الوسائط المدعومة:
- تمثيلات نصية لقيم (U)Int8/16/32/128/256.
NULL):
- تمثيلات نصية لقيم Float*، بما في ذلك
NaNوInf. - تمثيلات نصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toUInt16OrNull('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود
UInt16، يحدث overflow أو underflow في النتيجة.
لا يُعدّ ذلك خطأ.x— تمثيل نصي لرقم.String
UInt16، أو NULL إذا تعذّر التحويل. UInt16 أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toUInt16OrZero
toUInt16، تحوِّل هذه الدالة قيمة الإدخال إلى قيمة من النوع UInt16، لكنها تُرجع 0 في حال حدوث خطأ.
الوسيطات المدعومة:
- التمثيلات النصية لقيم (U)Int8/16/32/128/256.
0):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، على سبيل المثال
SELECT toUInt16OrZero('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود
UInt16، يحدث تجاوز سعة أو نقص سعة في النتيجة.
ولا يُعدّ ذلك خطأ.x— تمثيل سلسلة نصية لرقم.String
0 إذا تعذّر التحويل. UInt16
أمثلة
مثال على الاستخدام
Query
Response
toUInt256
- القيم أو تمثيلاتها النصية من النوع (U)Int*.
- القيم من النوع Float*.
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والست عشرية، مثل
SELECT toUInt256('0xc0fe');.
إذا تعذر تمثيل قيمة الإدخال ضمن حدود UInt256، فقد يحدث تجاوز أو نقص في السعة في النتيجة.
ولا يُعدّ ذلك خطأً.
expr— تعبير يُرجِع رقمًا أو تمثيلًا نصيًا لرقم.تعبير
UInt256
أمثلة
مثال على الاستخدام
Query
Response
toUInt256OrDefault
toUInt256، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع UInt256، لكنها تُرجع القيمة الافتراضية عند حدوث خطأ.
إذا لم يتم تمرير قيمة default، فستُرجع 0 عند حدوث خطأ.
الصياغة
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.Stringأو(U)Int*أوFloat*default— اختياري. القيمة الافتراضية التي ستُعاد إذا تعذّر التحليل.UInt256
UInt256
أمثلة
تحويل ناجح
Query
Response
Query
Response
toUInt256OrNull
toUInt256، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع UInt256، لكنها تُرجع NULL في حال حدوث خطأ.
الوسيطات المدعومة:
- التمثيلات النصية لقيم (U)Int*.
NULL):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والست عشرية، على سبيل المثال
SELECT toUInt256OrNull('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود
UInt256، يحدث فيض أو نقص في النتيجة.
ولا يُعدّ ذلك خطأ.x— تمثيل نصي لرقم.String
NULL إذا تعذر التحويل. UInt256 أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toUInt256OrZero
toUInt256، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع UInt256، لكنها تُرجع 0 عند حدوث خطأ.
الوسائط المدعومة:
- التمثيلات النصية لقيم (U)Int*.
0):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toUInt256OrZero('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود
UInt256، يحدث تجاوز أو نقص في النتيجة.
ولا يُعدّ ذلك خطأً.x— تمثيل نصي لعدد.String
UInt256، أو 0 إذا تعذّر التحويل. UInt256
أمثلة
مثال على الاستخدام
Query
Response
toUInt32
UInt32.
يطرح استثناءً عند حدوث خطأ.
الوسيطات المدعومة:
- القيم أو التمثيلات النصية من النوع (U)Int*.
- القيم من النوع Float*.
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toUInt32('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود
UInt32، فستحدث زيادة أو نقصان خارج النطاق في النتيجة.
ولا يُعدّ ذلك خطأً.
على سبيل المثال: SELECT toUInt32(4294967296) == 0;تستخدم الدالة التقريب نحو الصفر، ما يعني أنها تحذف الخانات الكسرية من الأعداد.
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.تعبير
UInt32
أمثلة
مثال على الاستخدام
Query
Response
toUInt32OrDefault
toUInt32، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع UInt32، لكنها تُعيد القيمة الافتراضية عند حدوث خطأ.
إذا لم تُمرَّر قيمة default، فستُعاد القيمة 0 عند حدوث خطأ.
الصيغة
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.Stringأو(U)Int*أوFloat*default— اختياري. القيمة الافتراضية التي تُرجع إذا تعذّر التحليل.UInt32
UInt32
أمثلة
تحويل ناجح
Query
Response
Query
Response
toUInt32OrNull
toUInt32، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع UInt32، لكنها تُرجع NULL في حال حدوث خطأ.
الوسيطات المدعومة:
- التمثيلات النصية لقيم (U)Int8/16/32/128/256.
NULL):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toUInt32OrNull('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود
UInt32، يحدث تجاوز سعة أو نقص سعة في النتيجة.
ولا يُعدّ ذلك خطأ.x— تمثيل نصي لعدد.String
UInt32، أو NULL إذا أخفقت عملية التحويل. UInt32 أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toUInt32OrZero
toUInt32، تحوّل هذه الدالة قيمة إدخال إلى قيمة من النوع UInt32، لكنها تُرجع 0 عند حدوث خطأ.
الوسيطات المدعومة:
- التمثيلات النصية لقيم (U)Int8/16/32/128/256.
0):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والستّ عشرية، مثل
SELECT toUInt32OrZero('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود
UInt32، يحدث تجاوز للحد الأعلى أو الأدنى في النتيجة.
ولا يُعدّ ذلك خطأً.x— تمثيل نصي لعدد.String
0 إذا تعذّر التحويل. UInt32
أمثلة
مثال على الاستخدام
Query
Response
toUInt64
UInt64.
يطرح استثناءً عند حدوث خطأ.
الوسيطات المدعومة:
- القيم أو التمثيلات النصية من النوع (U)Int*.
- القيم من النوع Float*.
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والستّ عشرية، مثل
SELECT toUInt64('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود
UInt64، فستحدث في النتيجة حالة تجاوز علوي أو سفلي.
ولا يُعدّ ذلك خطأً.
على سبيل المثال: SELECT toUInt64(18446744073709551616) == 0;تستخدم الدالة التقريب نحو الصفر، ما يعني أنها تحذف الخانات الكسرية من الأعداد.
expr— تعبير يُرجع عددًا أو تمثيلًا نصيًا لعدد.تعبير
UInt64
أمثلة
مثال على الاستخدام
Query
Response
toUInt64OrDefault
toUInt64، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع UInt64، لكنها تُرجع القيمة الافتراضية في حال حدوث خطأ.
إذا لم يتم تمرير قيمة default، فستُرجع 0 عند حدوث خطأ.
الصيغة
expr— تعبير يُرجع عددًا أو تمثيلًا نصيًا لعدد.Stringأو(U)Int*أوFloat*default— اختياري. القيمة الافتراضية التي تُعاد إذا تعذّر التحليل.UInt64
UInt64
أمثلة
تحويل ناجح
Query
Response
Query
Response
toUInt64OrNull
toUInt64، تحوّل هذه الدالة قيمة إدخال إلى قيمة من النوع UInt64، ولكنها تُرجع NULL في حال حدوث خطأ.
الوسيطات المدعومة:
- التمثيلات النصية لقيم (U)Int*.
NULL):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، على سبيل المثال
SELECT toUInt64OrNull('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود
UInt64، يحدث overflow أو underflow في النتيجة.
ولا يُعدّ ذلك خطأً.x— تمثيل نصي لرقم.String
NULL إذا تعذّر التحويل. UInt64 أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toUInt64OrZero
toUInt64، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع UInt64، لكنها تُرجع 0 في حال حدوث خطأ.
الوسيطات المدعومة:
- التمثيلات النصية لقيم (U)Int*.
0):
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والستّ عشرية، مثل
SELECT toUInt64OrZero('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود
UInt64، يحدث overflow أو underflow في النتيجة.
ولا يُعدّ ذلك خطأ.x— تمثيل نصي لعدد.String
0 إذا فشل التحويل. UInt64
أمثلة
مثال على الاستخدام
Query
Response
toUInt8
UInt8.
يطرح استثناءً في حال حدوث خطأ.
الوسيطات المدعومة:
- القيم أو التمثيلات النصية من النوع (U)Int*.
- القيم من النوع Float*.
- التمثيلات النصية لقيم Float*، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، مثل
SELECT toUInt8('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود UInt8، يحدث فائض أو نقص في النتيجة.
لا يُعدّ ذلك خطأً.
على سبيل المثال:
SELECT toUInt8(256) == 0;.تستخدم الدالة التقريب نحو الصفر، ما يعني أنها تحذف الأرقام الكسرية من الأعداد.
expr— تعبير يُرجع رقمًا أو تمثيلًا نصيًا لرقم.تعبير
UInt8
أمثلة
مثال على الاستخدام
Query
Response
toUInt8OrDefault
toUInt8، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع UInt8، لكنها تُرجِع القيمة الافتراضية عند حدوث خطأ.
إذا لم تُمرَّر قيمة default، فستُرجِع 0 عند حدوث خطأ.
الصياغة
expr—تعبيريُرجِع رقمًا أو تمثيلًا نصيًا لرقم.Stringأو(U)Int*أوFloat*default— اختياري. القيمة الافتراضية التي تُعاد إذا فشلت عملية التحليل.UInt8
UInt8
أمثلة
تحويل ناجح
Query
Response
Query
Response
toUInt8OrNull
toUInt8، تحوِّل هذه الدالة قيمة الإدخال إلى قيمة من النوع UInt8، ولكنها تُرجِع NULL في حال حدوث خطأ.
الوسيطات المدعومة:
- التمثيلات النصية لـ (U)Int8/16/32/128/256.
NULL):
- التمثيلات النصية لقيم Float* العادية، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، على سبيل المثال
SELECT toUInt8OrNull('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود
UInt8، فستحدث حالة تجاوز أو نقص في النتيجة.
ولا يُعَدّ ذلك خطأً.x— تمثيل نصي لرقم.String
NULL إذا أخفق التحويل. UInt8 أو NULL
أمثلة
مثال على الاستخدام
Query
Response
toUInt8OrZero
toUInt8، تحوّل هذه الدالة قيمة الإدخال إلى قيمة من النوع UInt8، ولكنها تُرجع 0 عند حدوث خطأ.
الوسيطات المدعومة:
- التمثيلات النصية لقيم (U)Int8/16/32/128/256.
0):
- التمثيلات النصية لقيم Float* العادية، بما في ذلك
NaNوInf. - التمثيلات النصية للقيم الثنائية والسداسية العشرية، على سبيل المثال
SELECT toUInt8OrZero('0xc0fe');.
إذا تعذّر تمثيل قيمة الإدخال ضمن حدود
UInt8، يحدث overflow أو underflow في النتيجة.
ولا يُعدّ ذلك خطأً.x— تمثيل نصي لعدد.String
UInt8، أو 0 إذا تعذر التحويل. UInt8
أمثلة
مثال على الاستخدام
Query
Response
toUUID
string— قيمة UUID على هيئة سلسلة نصية.StringأوFixedString
UUID
أمثلة
مثال على الاستخدام
Query
Response
toUUIDOrZero
toUUID، لكنه يعيد UUID صفريًا (00000000-0000-0000-0000-000000000000) بدلًا من طرح استثناء عند حدوث أخطاء في التحويل.
الوسيطات المدعومة:
- التمثيلات النصية لـ UUID بالتنسيق القياسي (8-4-4-4-12 رقمًا سداسيًا عشريًا).
- التمثيلات النصية لـ UUID من دون واصلات (32 رقمًا سداسيًا عشريًا).
- تنسيقات نصية غير صالحة.
- أنواع غير نصية.
x— تمثيل نصي لـ UUID.String
00000000-0000-0000-0000-000000000000). UUID
أمثلة
مثال على الاستخدام
Query
Response
toUnixTimestamp64Micro
DateTime64 إلى قيمة من النوع Int64 بدقة ميكروثانية ثابتة.
تُضبط قيمة الإدخال بالزيادة أو النقصان بحسب دقتها.
قيمة الإخراج مرتبطة بـ UTC، وليس بالمنطقة الزمنية لقيمة الإدخال.
value— قيمة من النوع DateTime64 بأي درجة دقة.DateTime64
Int64
أمثلة
مثال على الاستخدام
Query
Response
toUnixTimestamp64Milli
DateTime64 إلى قيمة Int64 بدقة ميلي ثانية ثابتة.
وتُزاد قيمة الإدخال أو تُخفض بالشكل المناسب وفقًا لدقتها.
تستند قيمة الإخراج إلى UTC، وليس إلى المنطقة الزمنية لقيمة الإدخال.
value— قيمة من نوع DateTime64 بأي درجة دقة.DateTime64
Int64
أمثلة
مثال على الاستخدام
Query
Response
toUnixTimestamp64Nano
DateTime64 إلى قيمة Int64 بدقة نانوثانية ثابتة.
ويُزاد مقياس قيمة الإدخال أو يُخفَّض حسب دقتها.
تُحتسب قيمة الإخراج بالنسبة إلى UTC، وليس بالنسبة إلى المنطقة الزمنية لقيمة الإدخال.
value— قيمة من نوع DateTime64 بأي مستوى دقة.DateTime64
Int64
أمثلة
مثال على الاستخدام
Query
Response
toUnixTimestamp64Second
DateTime64 إلى قيمة Int64 بدقة ثابتة بالثواني.
تُزاد قيمة الإدخال أو تُخفَّض بالشكل المناسب وفقًا لدقتها.
قيمة الخرج مرتبطة بـ UTC، وليست مرتبطة بالمنطقة الزمنية لقيمة الإدخال.
value— قيمة من نوع DateTime64 بأي درجة precision.DateTime64
Int64
أمثلة
مثال استخدام
Query
Response