LATERALSUBQUERYclausola - OpenSearch Servizio Amazon

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

LATERALSUBQUERYclausola

Nota

Per vedere quali integrazioni di fonti di AWS dati supportano questo SQL comando, vedi. OpenSearch SQLComandi e funzioni supportati

LATERAL SUBQUERYè una sottoquery preceduta dalla parola chiave. LATERAL Fornisce un modo per fare riferimento alle colonne della clausola precedente. FROM Senza la LATERAL parola chiave, le sottoquery possono fare riferimento solo alle colonne della query esterna, ma non alla clausola. FROM LATERAL SUBQUERYrende le interrogazioni complicate più semplici ed efficienti.

Sintassi

[ LATERAL ] primary_relation [ join_relation ]

Parametri

  • relazione_primaria

    Specifica la relazione principale. Può essere uno dei seguenti:

    1. Relazione tra tabelle

    2. Interrogazione con alias

      Sintassi: ( query ) [ [ AS ] alias ]

    3. Relazione con alias

      Syntax: ( relation ) [ [ AS ] alias ]

Examples (Esempi)

CREATE TABLE t1 (c1 INT, c2 INT); INSERT INTO t1 VALUES (0, 1), (1, 2); CREATE TABLE t2 (c1 INT, c2 INT); INSERT INTO t2 VALUES (0, 2), (0, 3); SELECT * FROM t1, LATERAL (SELECT * FROM t2 WHERE t1.c1 = t2.c1); +--------+-------+--------+-------+ | t1.c1 | t1.c2 | t2.c1 | t2.c2 | +-------+--------+--------+-------+ | 0 | 1 | 0 | 3 | | 0 | 1 | 0 | 2 | +-------+--------+--------+-------+ SELECT a, b, c FROM t1, LATERAL (SELECT c1 + c2 AS a), LATERAL (SELECT c1 - c2 AS b), LATERAL (SELECT a * b AS c); +--------+-------+--------+ | a | b | c | +-------+--------+--------+ | 3 | -1 | -3 | | 1 | -1 | -1 | +-------+--------+--------+