تعبير الجدول الشائع (CTE)

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

يحدد مجموعة نتائج مؤقتة يمكنك الرجوع إليها ربما عدة مرات ضمن نطاق عبارة SQL. يتم استخدام CTE بشكل أساسي في عبارة SELECT .

بناء الجمله

WITH common_table_expression [, ...]

common_table_expression
  view_identifier [ ( column_identifier [, ...] ) ] [ AS ] ( query )

معلمات

  • view_identifier

    معرف يمكن من خلاله common_table_expression الرجوع إلى

  • column_identifier

    معرف اختياري يمكن من خلاله الرجوع إلى عمود من common_table_expression .

    إذا column_identifierتم تحديد s، فيجب أن يتطابق رقمها مع عدد الأعمدة التي تم إرجاعها بواسطة query. إذا لم يتم تحديد أي أسماء، يتم اشتقاق أسماء الأعمدة queryمن .

  • الاستعلام

    استعلام ينتج مجموعة نتائج.

امثله

-- CTE with multiple column aliases
> WITH t(x, y) AS (SELECT 1, 2)
  SELECT * FROM t WHERE x = 1 AND y = 2;
   1   2

-- CTE in CTE definition
> WITH t AS (
    WITH t2 AS (SELECT 1)
    SELECT * FROM t2)
  SELECT * FROM t;
   1

-- CTE in subquery
> SELECT max(c) FROM (
    WITH t(c) AS (SELECT 1)
    SELECT * FROM t);
      1

-- CTE in subquery expression
> SELECT (WITH t AS (SELECT 1)
          SELECT * FROM t);
                1

-- CTE in CREATE VIEW statement
> CREATE VIEW v AS
    WITH t(a, b, c, d) AS (SELECT 1, 2, 3, 4)
    SELECT * FROM t;
> SELECT * FROM v;
   1   2   3   4

-- CTE names are scoped
> WITH t  AS (SELECT 1),
       t2 AS (
        WITH t AS (SELECT 2)
        SELECT * FROM t)
SELECT * FROM t2;
   2