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)