# 16.20 - Examples: Using KURTOSIS with Time Series - Teradata Database - Teradata Vantage NewSQL Engine

## Teradata Vantageā¢ Time Series Tables and Operations

Product
Release Number
16.20
Published
March 2019
Language
English (United States)
Last Update
2019-05-02
dita:mapPath
wne1515028094879.ditamap
dita:ditavalPath
TD_DBS_16_20_Update1.ditaval

## Example: Calculating the Kurtosis for PTI and non-PTI Tables

The following example shows how the Kurtosis function can be used with both Primary Time Index (PTI) and non-PTI tables.

The examples use the tables and data setup in Table and Data Definition for Time Series Aggregates Examples.

```/*PTI Table*/
SELECT \$TD_TIMECODE_RANGE, \$TD_GROUP_BY_TIME, BUOYID, KURTOSIS(TEMPERATURE)
FROM OCEAN_BUOYS
WHERE TD_TIMECODE BETWEEN TIMESTAMP '2014-01-06 08:00:00' AND TIMESTAMP '2014-01-06 10:30:00'
GROUP BY TIME (MINUTES(10) AND BUOYID)
ORDER BY 3,2,1;

/*Non-PTI Table*/
SELECT \$TD_TIMECODE_RANGE, \$TD_GROUP_BY_TIME, BUOYID, KURTOSIS(TEMPERATURE)
FROM OCEAN_BUOYS_NONPTI
WHERE TIMECODE BETWEEN TIMESTAMP '2014-01-06 08:00:00' AND TIMESTAMP '2014-01-06 10:30:00'
GROUP BY TIME (MINUTES(10) AND BUOYID)
USING TIMECODE(TIMECODE)
ORDER BY 3,2,1;```

Result:

The results of both queries are identical so only one result set is shown.
TIMECODE_RANGE GROUP BY TIME (MINUTES(10)) BUOYID Kurtosis (TEMPERATURE)
('2014-01-06 08:00:00.000000+00:00', '2014-01-06 08:10:00.000000+00:00') 1 0 ?
('2014-01-06 08:10:00.000000+00:00', '2014-01-06 08:20:00.000000+00:00') 2 0 ?
('2014-01-06 09:00:00.000000+00:00', '2014-01-06 09:10:00.000000+00:00' 7 1 -2.75837669094693E 000
('2014-01-06 10:00:00.000000+00:00', '2014-01-06 10:10:00.000000+00:00') 13 44 -2.17645648488608E 000
('2014-01-06 10:10:00.000000+00:00', '2014-01-06 10:20:00.000000+00:00') 14 44 ?

## Example: Using the HAVING Clause to Filter Out NULL Results for the Kurtosis Function

The following example shows how the Kurtosis function can be used with the HAVING clause to filter the results.

The examples use the tables and data setup in Table and Data Definition for Time Series Aggregates Examples.

```/*PTI Table*/
SELECT \$TD_TIMECODE_RANGE, \$TD_GROUP_BY_TIME, BUOYID, KURTOSIS(TEMPERATURE)
FROM OCEAN_BUOYS
WHERE TD_TIMECODE BETWEEN TIMESTAMP '2014-01-06 08:00:00' AND TIMESTAMP '2014-01-06 10:30:00'
GROUP BY TIME (MINUTES(10) AND BUOYID)
HAVING KURTOSIS(TEMPERATURE) IS NOT NULL
ORDER BY 3,2,1;

/*Non-PTI Table*/
SELECT \$TD_TIMECODE_RANGE, \$TD_GROUP_BY_TIME, BUOYID, KURTOSIS(TEMPERATURE)
FROM OCEAN_BUOYS_NONPTI
WHERE TIMECODE BETWEEN TIMESTAMP '2014-01-06 08:00:00' AND TIMESTAMP '2014-01-06 10:30:00'
GROUP BY TIME (MINUTES(10) AND BUOYID)
USING TIMECODE(TIMECODE)
HAVING KURTOSIS(TEMPERATURE) IS NOT NULL
ORDER BY 3,2,1;```

Result:

The results of both queries are identical so only one result set is shown.
TIMECODE_RANGE GROUP BY TIME (MINUTES(10)) BUOYID Kurtosis (TEMPERATURE)
('2014-01-06 09:00:00.000000+00:00', '2014-01-06 09:10:00.000000+00:00' 7 1 -2.75837669094693E 000
('2014-01-06 10:00:00.000000+00:00', '2014-01-06 10:10:00.000000+00:00') 13 44 -2.17645648488608E 000