以前は、CLOBまたはBLOBデータ型を含む列はあらゆる集合操作クエリーで許可されませんでした。これはCLOBまたはBLOB列ではハッシュができないからです。UNION ALLは(LOBを含む)どの列でもハッシュする必要がなく、この制限はUNION ALLの最適化機能によって取り除かれます。
次のテーブルを想定します。
CREATE TABLE t_blob1 (a1 INTEGER, b1 BLOB(2097088000)); CREATE TABLE t_clob2 (a2 INTEGER, b2 CLOB);
次の問合わせについて説明します。
-- Prior to Teradata Database 16.0:
SELECT b1 FROM t_clob1
UNION ALL
SELECT b2 FROM t_clob2;
*** Failure 5690 LOBs are not allowed to be hashed.
Statement# 1, Info = 0
-- Teradata Database 16.0:
SELECT b1 FROM t_clob1
UNION ALL
SELECT b2 FROM t_clob2;
*** Query completed. 8 rows found.