C Aggregate Function Using LOBs | UFC Code Examples | Teradata Vantage - C Aggregate Function Using LOBs - Advanced SQL Engine - Teradata Database

SQL External Routine Programming

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
June 2020
Language
English (United States)
Last Update
2021-01-24
dita:mapPath
qwr1571437338192.ditamap
dita:ditavalPath
lze1555437562152.ditaval
dita:id
B035-1147
lifecycle
previous
Product Category
Teradata Vantage™

This example implements the MAX_BLOB aggregate function and illustrates the use of persistent object references (LOB_REF).

Like the standard MAX aggregate function, it returns the greatest BLOB value of the given set. The comparison rule is the same as for VARBYTE or BYTE type values; that is, trailing zeros are not significant.

The algorithm assumes that the objects to be compared are random-valued byte strings. A complete ordering of a pair of strings can be determined by examining the first unequal byte pair.

In the vast majority of cases, the first unequal byte pair can be found within the first PREFIX_SIZE (500) bytes. By saving the prefix of the winner of each comparison, the need to reread any object is rare.