الكلمات والمخططات المحجوزة

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

الكلمات المحجوزة هي قيم حرفية تستخدم ككلمات أساسية بواسطة لغة SQL والتي لا يجب استخدامها كمعرفات لتجنب السلوك غير المتوقع.

أسماء المخططات المحجوزة لها معنى خاص ل Azure Databricks.

كلمات محجوزة

لا لا تسمح Azure Databricks رسميا باستخدام أي قيم حرفية محددة كمعرفات.

ومع ذلك، لاستخدام أي من قائمة المعرفات التالية كاسم مستعار للجدول، يجب إحاطة الاسم بعلامات التجزئة الخلفية (').

  • مضاد
  • عبر
  • EXCEPT
  • كامل
  • INNER
  • INTERSECT
  • انضمام
  • جانبي
  • LEFT
  • ناقص
  • طبيعي
  • تشغيل
  • RIGHT
  • شبه
  • UNION
  • استخدام

كلمات خاصة في التعبيرات

يمكن استخدام القائمة التالية من المعرفات في أي مكان، ولكن Azure Databricks يعاملها بشكل تفضيلي ككلمات أساسية داخل التعبيرات في سياقات معينة:

  • NULL

    قيمة SQL NULL .

  • DEFAULT

    يشير إلى عمود افتراضي.

  • TRUE

    القيمة المنطقية true SQL.

  • FALSE

    القيمة المنطقية false SQL.

  • LATERAL

    يستخدم كمحدد عمود للإشارة إلى الارتباط الجانبي الصريح.

استخدم علامات التجزئة الخلفية (NULL و DEFAULT) أو قم بتأهيل أسماء الأعمدة باسم جدول أو اسم مستعار.

يستخدم Azure Databricks البادئة CURRENT_ للإشارة إلى بعض إعدادات التكوين أو متغيرات السياق الأخرى. بادئة الشريط السفلي (_) مخصصة لأعمدة Azure Databricks الزائفة. في Databricks Runtime، العمود الزائف الموجود هو العمود _metadata.

لا يتم التعامل مع المعرفات ذات هذه البادئات بشكل تفضيلي. ومع ذلك، تجنب الأعمدة أو الأسماء المستعارة للأعمدة باستخدام هذه البادئات لتجنب السلوك غير المتوقع.

أسماء الكتالوجات المحجوزة

تحتفظ Azure Databricks بالقائمة التالية لأسماء الكتالوجات للاستخدام الحالي أو المستقبلي:

  • أسماء الكتالوجات التي تبدأ ب SYS
  • أسماء الكتالوجات التي تبدأ ب DATABRICKS

تجنب استخدام هذه الأسماء.

أسماء المخططات المحجوزة

تحتفظ Azure Databricks بقائمة أسماء المخططات التالية للاستخدام الحالي أو المستقبلي:

  • BUILTIN

    الاستخدام المستقبلي لتأهيل الوظائف المضمنة.

  • SESSION

    الاستخدام المستقبلي لتأهيل طرق العرض والوظائف المؤقتة.

  • INFORMATION_SCHEMA

    يحتفظ بمخطط معلومات SQL Standard.

  • أسماء المخططات التي تبدأ ب SYS أو DATABRICKS

تجنب استخدام هذه الأسماء.

كلمات ANSI المحجوزة

لا يفرض Azure Databricks كلمات ANSI المحجوزة. يتم توفير القائمة التالية من الكلمات الأساسية SQL2016 لأغراض إعلامية فقط.

  • A

    الكل، ALTER، و، ANY، ARRAY، AS، AT، AUTHORIZATION

  • B

    BETWEEN, BOTH, BY

  • C

    CASE، CAST، CHECK، COLLATE، COLUMN، COMMIT، CONSTRAINT، CREATE، CROSS، CUBE، CURRENT، CURRENT_DATE، CURRENT_TIME، CURRENT_TIMESTAMP، CURRENT_USER

  • D

    حذف، وصف، مميز، إسقاط

  • E

    ELSE، END، ESCAPE، EXCEPT، EXISTS، EXTERNAL، EXTRACT

  • F

    FALSE، FETCH، FILTER، FOR، FOREIGN، FROM، FULL، FUNCTION

  • G

    عمومي، منح، مجموعة، تجميع

  • H

    HAVING

  • أنا

    IN، INNER، INSERT، INTERSECT، INTERVAL، INTO، IS

  • J

    انضمام

  • L

    بادئة، يسار، مثل، محلي

  • N

    طبيعي، لا، لا، خال

  • O

    من، تشغيل، فقط، أو، ترتيب، خارج، خارجي، يتداخل

  • P

    PARTITION, POSITION, PRIMARY

  • R

    النطاق والمراجع والإبطال واليمين والتراجع والمجموعة والصف والصفوف

  • S

    حدد، SESSION_USER، تعيين، بعض، بدء

  • T

    TABLE, TABLESAMPLE, THEN, TIME, TO, TRAILING, TRUE, TRUNCATE

  • U

    UNION، UNIQUE، UNKNOWN، UPDATE، USER، USING

  • V

    القيم

  • W

    متى، أين، النافذة، مع

الأمثلة

-- Using SQL keywords
> CREATE TEMPORARY VIEW where(where) AS (VALUES (1));

> SELECT where from FROM where select;
  1

-- Usage of NULL
> SELECT NULL, `null`, T.null FROM VALUES(1) AS T(null);
 NULL   1       1

-- current_date is eclipsed by the column alias T.current_date
> SELECT (SELECT current_date), current_date, current_date()
    FROM VALUES(1) AS T(current_date);
 2021-10-23     1       2021-10-23

-- Reserved keyword ANTI cannot be used as table alias
> SELECT * FROM VALUES(1) AS ANTI;
Error in query: no viable alternative at input 'ANTI'

> SELECT * FROM VALUES(1) AS `ANTI`;
  1