0% found this document useful (0 votes)
65 views92 pages

Teradata Lab - Self Study 3

This document discusses functions in Teradata including: 1) Math functions 2) OLAP functions 3) Substring and positioning functions 4) Temporal table create function 5) Temporary tables It provides examples of using these functions in Teradata SQL statements to analyze and summarize sales data.

Uploaded by

anchal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
65 views92 pages

Teradata Lab - Self Study 3

This document discusses functions in Teradata including: 1) Math functions 2) OLAP functions 3) Substring and positioning functions 4) Temporal table create function 5) Temporary tables It provides examples of using these functions in Teradata SQL statements to analyze and summarize sales data.

Uploaded by

anchal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 92

Teradata CoE Teradata Lab Course

CONTENTS:
1) Math Functions
2) OLAP Functions
3) Substrings and Positioning Functions
4) Temporal Tables Create function
5) Temporary Tables
Teradata CoE Teradata Lab Course

Math Functions
Teradata CoE Teradata Lab Course

Math Functions
Teradata CoE Teradata Lab Course

OLAP Functions
Teradata CoE Teradata Lab Course

OLAP Functions
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course

SEL�CT P=ociuct ID, Sale Date, Daily Sales,


MD:?P(:Jai:y Sales,-�, Product Io, Sale_Date) as
PROM Sales 'r able - - "M:>iff"

?roduct. Sale Date Dail;! MDiff


ID 2000-09-28 48850.40
Sales
1000 2000-09-29 54500.22
1000 2000-09-30 36000.07
1000 2000-10-01 40200.43
1000 2000-10-02 32800.50 -16049.9
Not al 1000 2000-10-03 64300.00 9799. 7
rows 1000 2000-10-04 54553.10 18553.0
are 1000 2000-09-28 41888. 1688.4
diSplayed 2000 2000-09-29 88 15199.5
in 2000 2000-09-30 48000.00 -H4�9.9
2000 2000-10-01 49850.03 297 .
thi 1.
2000 2000-10-02 54850.29
s 2000 2000-10-03 36021.93 -5866.9
a -4799.8
2000 2000-10-04 43200.18
ns 2000 32800.50 -
w 17049.5
How much
er
more did we make for Product ID 1000 on 2000-10-03 versus Product ID 1000 which was 4 rows
2000-09-
earlierse
on - -
29? t
Moving Difference using ANSI Syntax
SELEC� P=oduct :o, Sale Date, Daily Sales,
Daily s�:es - SUM(Dai:y Sale;)
OVER (-OR:JER BY ?roduct ID ASC, Sale Date
ROWS BEDiEEN 4 PRECEDING AND 4 PRECEDING) AS "MDiff
ASC
PROM Sales Table ANS:"

Product ID Sale :iate Dail¥ Sales MD.:.ff ANS-


1000 2000-09-28 48850.40 ?
1000 2000-09-29 54500.22 ?
1000 2000-09-30 36000.07 ?
1000 2000-10-01 40200.43 ?
1000 2000-10-02 32800.50 -16049.90
Not all rows 1000 2000-10-03 64300.00 9799.78
are 1000 2000-10-04 54553.10 18553.03
displayed 2000 2000-09-28 41888. 1688 .45
in 2000 2000-09-29 88 15199.50
thi 2000 2000-09-30 '!8000.00 -14449.
s 2000 2000-10-01 49850.03 97
a 2000 2000-10-02
54850.29 297.19
n 2000 36021.93
2000-10-03 -5866.95
s 2000 2000-10-04 43200.18 -
w 32800.50 <;799.82
This iserhow you do an MDiff using the ANSI Syntax with a moving window of
-17049.53
4. s
Movinget Difference using ANSI Syntax with Partition By

SE�ECT Product ID, Sale Date (Format 'yyyy-mm-dd'), Daily sa:es,


Daily Sales
- SUM(Da.:.ly-Sales) OVER (?�..RTIT!ON BY Product-ID
- - ORDER BY Product ID ASC, Sale Date ASC
R PRECEDING MID 4 PRECED!NG) J>.S "MDiff_JlliSI"
FROM Sales_Tab:e; O
W
S
Product
B Sale Date Daily Sales
I:J E 1000 2000-09-28 43850.�0
T 1000 2000-09-29 5q500.22
W 1000 2000-09-30 36000.07
E 1000 2000-10-01 40200.43
E
N

4
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course

?roduct :D sa:e Date Daill,! Rank1


1000 10/02/2000 Sales 1
2000 10/0.;/200 32800.50 1
1000 0 32800.50 3
2000 09/30/2000 36000.07 4
Not au rows 1000 10/02/2000 36021. 93 5
are 2000 10/01/2000 40200. 6
displayed in 2000 09/28/2000 43 7
this answer 2000 10/03/2000 41888. 8
set 1000 09/29/2000 88 9
2000 09/28/2000 43200.18 10
1000 09/30/2000 48000.00 11
1000 09/29/2000 48859. 12
2000 10/04/2000 40 13
10/01/2000 49850.03
54500.22
This is the RANK() OVER. It provides a rank for your queries. Notice how you do not place anything within the () after the
54553.10
word RANK. Default Sort is ASC. 54850. 29

Getting RANK using ANSI Syntax to Sort in DESC Order

SELECT Product I� ,Sale �ate , Daily Sales,


RANK() OVER (ORDER BY Daily DESC) AS Rankl
fROM Sales Sales
Table -
WHERE Prod;ct_ID IN (1000, 2000)
;
sa:e

"
Product :>ate Ja;:!l
I:> 10/03/2000
Sales 64300.00
1000 10/01/2000 54850.29
2000 10/04/2000 54553.10
1000
1000
2000
1000
2000
09/29/2000
09/30/2000
09/28/2000
09/29/2000
54500.22
49850.03
48850.40
48000.00
"l
1
2000 10/03/2000 ,3200.18
2000 09/28/2000 41888.88
1000 10/01/2000 ,0200.43
2000 10/02/2000 36021.
1000 09/30/2000 93 4
2000 10/04/2000 36000.07
5
1000 3::800.5
10/02/2000
6
0 7
Is the query above in ASC mode or DESC mode32800.50
for sorting? 8
9
RANK() OVER and PARTITION BY 10
11
12
SELECT Product ID ,Sale Date, Daily Sales, 13
RANK() OVER (PARTITIO!" BY Product ID 13
ORDER BY Oaily_Sales OESC) AS
Rankl fROM Sales Tab:e
WHERE Product ID IN (1000,
2000)
Product Sale Date Da�l� Sales Ran kl
I:> 10/03/2000 6,300.00 1
1000 10/04/2000 5,553.10 2
1000 09/29/2000 54500.22 3
1000 09/28/2000 48850.40 4
1000 10/01/2000 40200.43 5
1000 09/30/2000 36000.07 6
1000 10/02/2000 32800.50 7
::ooo
1000 10/01/2000 54850.29 l

::oo 09/30/2000 49850.03 ::


09/29/2000 48000.00 3
o 10/03/2000 43200.18 4
coc 09/28/2000 41888.88 5
10/02/2000 36021.93 6
o 10/04/2000 32800.50 7
::ooo
::ooo
cooo
:occ
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course

1000 2000-09-29 54500.22 3:000.5


Notall rows 1000 2000-09-30 36000.07 3:000.5
are displayed 1000 2000-10-01 qo200.43 3'.::80
in 1000 2000-10-02 3:300.50 0.5
this answer 1000 2000-10-03 64300.00 3'.::80
set 1000 2000-10-04 54553.10 0.5
2000 2000-09-28 41888.88 3:800. 5
2000 2000-09-29 3'.::80
48000.00
2000 2000-09-30 0.5q9950.03
2000 2000-10-01 32800.5
54850.29
3:800.5
3:800.5 PRECEDING statement. So, it
Min only displayed 32800.50 because there is NOT a ROWS UNBOUNDED
found the lowest Daily_Sales and repeated it 3'.::80
0.5
Finding a Value of a Column in the Next Row with MIN
SELECT Product IO ,Sale Date, Daily Sales,
M:N(Daily_Sales)-OVER (PARTITION BY Produet_ID
ORDER B� Product ID, Sale Date
ROWS BETWEEN 1 Follow�ng ;nd 1 Following) AS NextSale
FROM Sales_Table W�ERE ?roduct_ID IN (1000, 2000) ;

:?roduct ID Sale Date Dailv Sales NextSale


1000 2000-09-28 48850.40 54500.22
1000 2000-09-29 5q500.22 36000.07
1000 2000-09-30 36000.07 40200.43
1000 2000-10-01 40200.q3 32800.50
1000 2000-10-02 32800.50 64300.00
1000 2000-10-03 64300.00 54553.10
1000 2000-10-04 54553.10 ?
2000 2000-09-28 41888.88 48000.00
2000 2000-09-29 48000.00 49850.03
2000 2000-09-30 49850.03 54850.29
2000 2000-10-01 54850.29 36021.93
2000 2000-10-02 36021.93 43200.18
2000 2000-10-03 43200.18 32800.50
2000 2000-10-04 32800.50 ?

The above example finds the value of a column in the next row for Daily_Sales. Notice it is partitioned, so
there is a Null value at the end of each Product_lD.

Finding a Value of a Date in the Next Row with MIN


SELECT Product IO ,Sale Date , Daily Sa:es,
MIN(Sal; Date) OVER (PART:TION BY P�oduct :D
ORDER BY Product :o, Sale -
ROWS BETWEEN 1 co:lowing ;nd l
Date Fol:ow�ng) AS NextDate
FROM Sales_Table WHERE Product_I� IN (1000, 1000) ;

DY�.-,,,�� ID �A1S:: I2Ak� '2A�l:X: .tiS::��llAiS::


1000 2000-09-28 48850.40 091:91:000
�Al�� 54500.22
1000 2000-09-29 091301:000
1000 2000-09-30 36000.07 101011:000
1000 2000-10-01 40200.43 101021:000
1000 2000-10-02 32800.50 101031:000
1000 2000-10-03 64300.00 101041:000
1000 :000-10-04 54553.10 �
2000 2000-09-28 41888.88 091:91:000
2000 2000-09-29 48000.00 091301:000
2000 2000-09-30 49850.03 101011:000
2000 2000-10-01 54850.29 101021:000
2000 2000-10-02 36021.93 101031:000
2000 2000-10-03 43200.18 101041:000
2000 2000-10-04 32800.50 ?

The above example finds the value of a column in the next row for Sale_Date. Notice it is partitioned, so there
is a Null
Teradata CoE Teradata Lab Course

value at the end of each Product_lD.

Finding Gaps between Dates

SELECT Product Id ,Sale Date


,M!N(Sal;_Jate) OVER (PARTITION BY Product_Id ORDER BY Sale Date
ROWS BETWEEN 1 F-OLLOWHIG JI_ND U1"BOUt;DED
E"O::.LOWING) AS jate Of Next Row
,Date Of Next Row - Sale Date �s jays To Next Row
FROM Sales Table-WHERE ?roduct_!D Between 1000 a;d 2000;

Product ID Sale Date Date Of Next Row Da�s To Next Row


1000 10/04/2000 ? ?
1000 10/03/2000 10/04/2000 l
1000 10/02/2000 10/03/2000 1
1000 10/01/2000 10/02/2000 l
1000 09/30/2000 10/01/2000 l
1000 09/�9/2000 09/30/2000 1
1000 09/�8/2000 09/29/2000 1
2000 10/04/2000 7 ?
2000 10/03/2000 10/04/2000 1
2000 10/02/2000 10/03/2000 1
2000 10/01/2000 10/02/2000 1
2000 09/30/2000 10/01/2000 1
2000 09/29/2000 09/30/2000 1
2000 09/28/2000 09/29/2000 1

The above query finds gaps in dates.

The CSUM for Each Product_lD for the First 3 Days


SELECT ROW NUMBER() OVER (PARTIIION BY Product_ID ORDER BY Sale_Date) As Row_Nbr
Product Id, Sale Date
MIN(Sal;_Date) OVER (PARTIIION BY Product ID OR::>ER BY Sale Date ROWS BETWEEN 1
FOLLOW:NG A.�D 1 F-0::.LOW:NG) As Next_Start_Dt
Daily Sales
SUM(D�ily_Sales) OVER (PARTITION BY Product ID ORDER BY Sale Date
ROWS UNBOUNDED PRECE::>I�G) As To Date-Revenue
FROM Sales Table
QUALIFY Row Nbr <= 3

Row Nbr Product ID Sale Date Next Start. :)t Dail� Sa1es To Date Revenue
1 1000 09/28/2000 09/29/2000 48850.40 �8850.40
2 1000 09/29/2000 09/30/2000 5,500.22 103350.62
3 1000 09/30/2000 10/01/2000 36000.07 139350.69
1 2000 09/28/2000 09/29/2000 41888. 88 ,1888.88
2 2000 09/29/2000 09/30/2000 48000.00 89888.88
3 2000 09/30/2000 10/01/2000 49850.03 139738.9
1 3000 09/28/2000 09/29/2000 61301.77 1
2 3000 09/29/2000 09/30/2000 3,509.13 61301.77
3 3000 09/30/2000 10/01/2000 43868.86 95810.90
139679.76
The above example shows the cumulative SUM for the Daily_Sales for the first three days for each of our
Product_lDs.
Quiz - Fill in the Blank

SELECT Product ID ,Sale Date , Daily Sales,


MIN(Daily_Sales)-OVER (P�.RTITION BY Product ID
ORDER BY ?roduct_!J,-Sale_Jace
ROWS UNBOUNDED PRECEDING) AS MinOVer
FROM Sales_Table WHERE Producc_ID IN (1000,
2000)
Sale Daily sa1e;:s MipOy5r
Pats 48850.40 48850.40
1000
1000 2000-09-29
2000-09-28 54500.22 48850.40
1000 2000-09-30 36000.07 36000.07
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course

A Second Typical Rows per Value Query on Sale_Date


Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course

Substrings and Positioning Functions


Teradata CoE Teradata Lab Course

Substrings and Positioning Functions


Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course

Hare:ison 8
Jones 5
Larkins 7
Reilly 6
Smith 5
Smythe 6
Strickling !
O
The TRIM command will trim off any spaces before and after the
Last_name.
CHARACTERS and CHARACTER_LENGTH equivalent

SELECT First Name


,C:iAR.�CTERS(F�rs� Name) AS C_tength
FROM Em lo ee Table;

Query2

SE�ECT First Name


,C:iA.RACTER_Leng�h(�irs�_Name) AS C_Lengt
FROM Em lo ee Tab:e;

These two queries will get you the SAME EXACT answer set in your
report
OCTET_LENGTH

Query
1
SELECT First Name
,CH�..RACTER(First_Name) AS C_Lengt
FROM Em lo ee Table;

Query2

SE�ECT First Name


,C:iARACTE� Leng�h(First Name) AS C_Lengt
PROM Em lo-ee Table ; -

Query3

SELECT First Name


,Octet �ength(Pirst Name) AS C_Lengt
FROM Ein lo ee Table - ;

You can also use the OCTET LENGTH command. These three queries get the same exact answer sets! Query 2 and 3
are ANSI Standard.

The TRIM Command trims both Leading and Trailing Spaces

Query
1
SELECT Last Name
,Trirn(Last Name) AS No_Space
FROM Em lo-ee Table

Query2
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course

F- rs'C Name v;t:.a":.sUF


Sqtaggy
John
Richard
Herbert
.
Mandee
Cletus
William
Billy
!.ora:.ne
In our example above, we start in position 3, but we go for zero positions so nothing is delivered in the column. That is
what's up!

An Example using SUBSTRING, TRIM and CHAR Together

CHAR(20)

SELECT Last Name


.SUBSTRING(La�t_Name FRO:t'1
CHARACTERS( TRI'.\1 {TRAILING FROM Last_Name)) ·I FOR 2) AS Letters
FROM Employee_Table:

Lsi:i!. ,
es
HAm� �t:t�·
Jones

Smi-ch
Smythe th
Harr:.so he
n on
Chambers zs
Stricklin,i
ng
Reil:y ly
Coffing
ng
:,ark:.ns ns

The SOL above brings back the last two letters of each Last_Name, even though the last names are of different
length. We first trimmed the spaces off of Last_Name. Then we counted the characters in the Last_Name. Then we
subtracted two from the Last_Name character length, and then passed it to our substring as the starting position.
Since we didn't give an ending position in our substring it defaulted to the end.

SUBSTRING and SUBSTR are equal, but use differe,nt syntax

Query
1
SELECT First
SUBS7RING(Fi;st Name FRO� 2 for3) AS Qui
Name,
FROM Em lo cc 7ablc ;

Query2

SE�ECT First. Name,


SUBSTR(First.-Narne, 2 ,3) AS
FROM
Quiz lo e; Table
·
Both queries above are going to yield the same results! SUBSTR is just a different way of doing a substring. Both
have
two parameters in starting position and number of character length.
The POSITION Command finds a Letters Position

SE�ECT Last �ane


,?os��:.or-('e' n Last Nane) AS Find The E
,?os��ion('f' n Last=Nane) AS Find The F
?ROM �r-ployee Tab:e
Teradata CoE Teradata Lab Course

LastName Find_Tue_E Find_Tue_


c is in F
Jones 4
4t1i
Smith 0 0
position
Smythe 6 0
Harrison 0 0 Nofisin
the name
Chamber 6 0
s 0 0
e is2r.d
Strickling 2 0
positio l"fi.s in
n in Reilly 0 3
Coffing 3rd position
name 0 0
Larkins
This is the position counter. What it will do is tell you what position a letter is on. Why did Jones have a 4 in the
result set? The 'e' was in the 4th position. Why did Smith get a zero for both columns? There is no 'e' in Smith
and no 'f in Smith. If there are two 'fs' only the first occurrence is reported.

The POSITION Command is brilliant with SUBSTRING

SE:..ECT Dept No
,Jepartment Name as Jepty
,SU3STR(JeptJ,1 , ?OSIT:OK(' ' IN Jcpartreent_Nane) -1) as
Wordl
FROM Department Table;

SE:..ECT Dept_Xo
,Jepa=tment Name as Jepty
,SUBSTR:NG(J;pty ?ROM 1 ;-OR ?OSITION(' ' IN Jepart�ent_Na.ne) -1) as Wo=dl
FROM Department Table;

Dept No Depty
200 Research and Develop Research
100 Marketing �a=ket�ng

400 Custome= Suppo=t Custocer


300 Sales sa:es
500 Suman Resou=ces Eun.an

What was the starting position of the Substring in the above query? It was one. The ending position (FOR
length) was calculated to look for the first space and then subtract 1. So for "Research and Develop" the starting
position was one and for 9-1 = 8.

Quiz - Name that SUBSTRING Starting and For Length

SE�ECT Dept_No
,Department �a�e as Depty
,SUBSTRIXG(Jepty PROM 1 c-OR POSlT:ON(' ' IN Jepartoent_Nane) -1) as Wo=dl
FROM Department Table;
Dept No Deoty Wordl
200 Research and �evelop Research
100 Marketing Customer Marketing
400 Support Sales Custome=
300 Human Resources Sales
500 :3.uman
Marketing E'O
(FRO!-'. R (FROM
Research and Jevelop FOR
Sales (FROM FOR )
Customer Support FOR )
(;RO!-'.
Human Resources (PROM� POR -i-
Fill in the number for the FROM and the FOR numbers above for each row.
Next page!
The POSITION Command is brilliant with SUBSTRING

SELECT Dept_Xo
,�epartment Name as �epty
,SUBSTR(Jepty,l , ?OSlT:ON(' ' IN Depart�ent_Naoe) -1) as Wordl
FROM Department_Table;
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course

First Nane Last Name rull Name


Squiggy Jones Squigay Jones

See those II? Those represent concatenation. That allows you to combine multiple columns into one column.
The II (Pipe
Symbol) on your keyboard is just above the ENTER key. Don't put a space in between, but just put two Pipe
Symbols
together.
In this example,and
Concatenation we have combined the first name, then a single space, and then the last name to get a new
column
SUBSTRINGcalled 'Full name', like Squiggy Jones.

APetiod (.) and


SELECT First Name


a
.Last �pace
Name
. Substring(First_Name. 1. 1) JI '. ' II Last Name
as Full Name
FROM Employee_Table
WHEREFirst_Name = 'Squiggy'

First Name Las't Name F'ul 1 Name


Squ:..ggy Jones S. Jones

Of the three items being concatenated together, what is the first item of concatenation in the example above?
It is the first initial of the First_Name. Then we concatenated a literal space and a period. Then we
concatenated the Last_Name. Notice that the report shows only three columns.

Four Concatenations Together

� I I
J
SELECT First Name VAR.HAR
.Last Xame
,TRD.l(Last_Kmue) '' Substri11g(First_Name, l, 1) ' AS Last Kame l st
FROM Employee Table
WHERE First_Kame = 'Squiggy' :

First Name T,ast Nar- Last Name lst


Squiggy ce Jones S.
Jones
Why did we TRIM the Last_Name? To get rid of the spaces or the output would have looked odd. How many
items are being concatenated in the example above? There are 4 items concatenated. We start with the
Last_Name (after we trim it), then we have a single space, then we have the First Initial of the First Name, and
then we have a Period.
Troubleshooting Concatenation

lsE:.ECT Fir:,t _Nami,


, Last Nar:i.e
, TRIM- (Last Nar.ie) I ' I I Substring (First_Name, 1, 1) 11 AS Last Name 1st
FROM Employee �able
��HERE First_Name = 'Squiggy'

ERROR

What happened above to cause the error? Can you see it? The Pipe Symbols II have a space between them
like 11, when
it should be 11- It is a tough one to spot so be careful.

Capt?,Pl 1 lil ti
Teradata CoE Teradata Lab Course

Temporal Tables Create Functions


Teradata CoE Teradata Lab Course

Temporal Tables Create Functions


Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course

Temporary Tables
Teradata CoE Teradata Lab Course

Temporary Tables
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course
Teradata CoE Teradata Lab Course

You might also like