Joined-table
指定如何联接表。
语法
table‑reference [join-type] JOIN table-reference[ TABLESAMPLE(sampling‑pct) ] [ ON join‑predicate ]
参数
- table‑reference
- 表或其他的 joined-table。
- join-type
- 有效值:
-
INNER(默认值)。INNER JOIN等效于在WHERE子句中指定其联接谓词的查询。 -
LEFT [ OUTER ] -
RIGHT [ OUTER ] -
FULL [ OUTER ] -
NATURAL -
CROSS
-
TABLESAMPLE- 指定采用简单的随机采样返回近似的记录百分比。总潜在返回集中的所有行包含在采样中的机会均等。Vertica 在应用查询中的其他筛选器之前执行此采样操作。无法保证返回的记录数是 sampling‑pct 定义的确切的记录百分比。
TABLESAMPLE选项仅可用于用户定义的表和数据收集器 (DC) 表。不支持视图和系统表。 - sampling‑pct
- 指定作为采样的一部分返回的记录百分比。该值必须大于 0 且小于 100。
-
开启 join‑predicate - 等值联接基于联接表中的一个或多个列。其对于
NATURAL和CROSS联接无效,对于所有其他联接类型都是必需的。
备选联接语法选项
Vertica 支持两种较旧的联接语法约定:
-
WHERE子句中的联接谓词指定的表联接 -
USING子句指定的表联接
有关详细信息,请参阅联接语法。
示例
下列 SELECT 语句使用 TABLESAMPLE 选项限定其 JOIN 子句:
=> SELECT user_id.id, user_name.name FROM user_name TABLESAMPLE(50)
JOIN user_id TABLESAMPLE(50) ON user_name.id = user_id.id;
id | name
------+--------
489 | Markus
2234 | Cato
763 | Pompey
(3 rows)