إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
ينطبق على:
Databricks SQL
Databricks Runtime
مرجع الجدول هو جدول نتائج وسيط داخل SQL. يمكن اشتقاقه من عوامل تشغيل أخرى، مثل الدالات أو الصلات أو الاستعلام الفرعي، أو الرجوع إلى جدول أساسي مباشرة، أو إنشاؤه كجدول مضمن.
بناء الجملة
table_reference
{ table_name [ TABLESAMPLE clause ] [ table_alias ] |
{ STREAM table_name [ table_alias ] | STREAM ( table_name ) [ table_alias ] } |
view_name [ table_alias ] |
JOIN clause |
PIVOT clause |
UNPIVOT clause |
[ STREAM ] table_valued_function [ table_alias ] |
[ LATERAL ] table_valued_function [ table_alias ] |
VALUES clause |
[ LATERAL ] ( query ) [ TABLESAMPLE clause ] [ table_alias ] }
المعلمات
-
تعريف جدول قد يحتوي على مواصفات زمنية. راجع العمل مع محفوظات جدول Delta Lake للحصول على التفاصيل.
إذا تعذر العثور على الجدول، فإن Azure Databricks يثير خطأ TABLE_OR_VIEW_NOT_FOUND .
راجع العمود، الحقل، المعلمة، ودقة المتغير للحصول على مزيد من المعلومات حول تحليل الاسم.
ينطبق على: **
Databricks SQL
Databricks Runtime 16.0 والإصدارات الأحدثtable_nameقد تتضمن مواصفات خيارات. -
تعريف طريقة عرض أو تعبير جدول شائع (CTE). إذا تعذر العثور على طريقة العرض، فإن Azure Databricks يثير خطأ TABLE_OR_VIEW_NOT_FOUND .
راجع العمود، الحقل، المعلمة، ودقة المتغير للحصول على مزيد من المعلومات حول تحليل الاسم.
استدر
إرجاع جدول أو دالة ذات قيمة جدول كمصدر دفق. لا يمكن توفير الجداول بمواصفات زمنية عند استخدامها مع
STREAMالكلمة الأساسية . يتم استخدام مصادر الدفق الأكثر شيوعا في تعريفات جداول الدفق.-
يجمع بين علاقة أو أكثر باستخدام صلة.
-
ينطبق على:
Databricks SQL
Databricks Runtime 12.2 LTS وما فوق.يستخدم لمنظور البيانات؛ يمكنك الحصول على القيم المجمعة استنادا إلى قيمة عمود محددة.
قبل Databricks Runtime 12.0 يقتصر PIVOT على SELECT الذي يتبع العبارة
FROM. -
ينطبق على:
Databricks SQL
Databricks Runtime 12.2 LTS وما فوق.يستخدم لمنظور البيانات؛ يمكنك تقسيم مجموعات أعمدة متعددة إلى صفوف.
[لاحقا] table_valued_function_invocation
استدعاء دالة ذات قيمة جدول. للإشارة إلى الأعمدة المكشوفة بواسطة السابق
table_referenceفي نفسFROMالعبارة يجب تحديدLATERAL.-
تعريف جدول مضمن.
[لاحقا] ( استعلام )
يحسب مرجع جدول باستخدام استعلام. قد يشير استعلام مسبوق بأعمدة
LATERALتم كشفها بواسطة سابقtable_referenceفي نفسFROMالعبارة. تسمى هذه البنية استعلاما مرتبطا أو تابعا.-
قم بشكل اختياري بتقليل حجم مجموعة النتائج عن طريق أخذ عينات من جزء صغير من الصفوف فقط.
-
يحدد اختياريا تسمية ل
table_reference.table_aliasإذا كان يتضمنcolumn_identifiers يجب أن يتطابق رقمها مع عدد الأعمدة فيtable_reference.
تحديد على جدول Delta
بالإضافة إلى الخيارات القياسية SELECT ، تدعم جداول Delta خيارات السفر عبر الوقت الموضحة في هذا القسم. للحصول على التفاصيل، راجع العمل مع محفوظات جدول Delta Lake.
AS OF إعراب
table_identifier TIMESTAMP AS OF timestamp_expression
table_identifier VERSION AS OF version
timestamp_expressionيمكن أن يكون أي واحد من:'2018-10-18T22:15:12.013Z'، أي سلسلة يمكن تحويلها إلى طابع زمنيcast('2018-10-18 13:36:32 CEST' as timestamp)'2018-10-18'، أي سلسلة تاريخcurrent_timestamp() - interval 12 hoursdate_sub(current_date(), 1)- أي تعبير آخر يتم تحويله أو يمكن تحويله إلى طابع زمني
versionهي قيمة طويلة يمكن الحصول عليها من إخراجDESCRIBE HISTORY table_spec.
لا timestamp_expression يمكن ولا version الاستعلامات الفرعية.
مثال
> SELECT * FROM events TIMESTAMP AS OF '2018-10-18T22:15:12.013Z'
> SELECT * FROM events VERSION AS OF 123
@ إعراب
استخدم بناء الجملة @ لتحديد الطابع الزمني أو الإصدار. يجب أن يكون الطابع الزمني بالتنسيق yyyyMMddHHmmssSSS . يمكنك تحديد إصدار بعد @ عن طريق إلحاق بالإصدار v . على سبيل المثال، للاستعلام عن إصدار 123 الجدول events، حدد events@v123.
مثال
> SELECT * FROM events@20190101000000000
> SELECT * FROM events@v123
الأمثلة
-- Return a data set from a storage location using a credential.
> SELECT * FROM `csv`.`spreadsheets/data.csv` WITH(CREDENTIAL some_credential);
-- Select from a jdbc data source while controlling the fetch size.
> SELECT * FROM jdbcTable WITH(fetchSize = 0);
-- select all referencable columns from all tables
> SELECT * FROM VALUES(1, 2) AS t1(c1, c2), VALUES(3, 4) AS t2(c3, c4);
1 2 3 4
-- select all referencable columns from one table
> SELECT t2.* FROM VALUES(1, 2) AS t1(c1, c2), VALUES(3, 4) AS t2(c3, c4);
3 4
-- select all referencable columns from all tables except t2.c4
> SELECT * EXCEPT(c4) FROM VALUES(1, 2) AS t1(c1, c2), VALUES(3, 4) AS t2(c3, c4);
1 2 3
-- select all referencable columns from a table, except a nested field.
> SELECT * EXCEPT(c2.b) FROM VALUES(1, named_struct('a', 2, 'b', 3)) AS t(c1, c2);
1 { "a" : 2 }
-- Removing all fields results in an empty struct
> SELECT * EXCEPT(c2.b, c2.a) FROM VALUES(1, named_struct('a', 2, 'b', 3)) AS t(c1, c2);
1 { }
-- Overlapping names result in an error
> SELECT * EXCEPT(c2, c2.a) FROM VALUES(1, named_struct('a', 2, 'b', 3)) AS t(c1, c2);
Error: EXCEPT_OVERLAPPING_COLUMNS