17.05 - Example: INSERT Using a Scalar Subquery - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL Data Manipulation Language

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
Published
January 2021
Language
English (United States)
Last Update
2021-01-22
dita:mapPath
vnq1596660420420.ditamap
dita:ditavalPath
hoy1596145193032.ditaval

A scalar subquery can be specified as a parameterized value in the value list of a simple INSERT request, but Vantage always interprets it as a noncorrelated scalar subquery.

For example, the database processes the scalar subquery SELECT d2 FROM t2 WHERE a2=t1.a1 in the select list of the following INSERT request as if it were SELECT d2 FROM t2, t1 WHERE a2=t1.a1.

In other words, the database interprets t1 in the scalar subquery as a distinct instance of t1 rather than as the target table t1 of the insert operation.

     INSERT INTO t1 VALUES (1,2,3 (SELECT d2
                                   FROM t2
                                   WHERE a2=t1.a1));