📜  Teradata-内置函数(1)

📅  最后修改于: 2023-12-03 15:05:33.986000             🧑  作者: Mango

Teradata 内置函数

Teradata 是一个广泛使用的关系型数据库管理系统 (RDBMS),它支持许多 SQL 函数来操作和计算数据。这些内置函数包括以下类型:

  • 聚合函数
  • 字符串函数
  • 日期时间函数
  • 数值函数
  • 转换函数
  • 分析函数

下面将详细介绍每种函数类型及其常用函数。

聚合函数

聚合函数用于在数据集上执行数学运算,并返回单个聚合值。

常用的聚合函数包括:

COUNT()

COUNT() 函数返回指定列的行数或表达式的非空值数量。

SELECT COUNT(*)
FROM myTable;
SUM()

SUM() 函数返回指定列或表达式的总和。

SELECT SUM(sales)
FROM myTable;
AVG()

AVG() 函数返回指定列或表达式的平均值。

SELECT AVG(sales)
FROM myTable;
MAX()

MAX() 函数返回指定列或表达式的最大值。

SELECT MAX(sales)
FROM myTable;
MIN()

MIN() 函数返回指定列或表达式的最小值。

SELECT MIN(sales)
FROM myTable;
字符串函数

字符串函数用于对字符串类型的数据执行操作。

常用的字符串函数包括:

CONCAT()

CONCAT() 函数返回连接两个或多个字符串的结果。

SELECT CONCAT(last_name, ', ', first_name)
FROM myTable;
SUBSTR()

SUBSTR() 函数返回字符串的子字符串。

SELECT SUBSTR(name, 2, 3)
FROM myTable;
TRIM()

TRIM() 函数用于从字符串的开头或结尾删除空格。

SELECT TRIM(name)
FROM myTable;
LOWER()

LOWER() 函数用于将字符串转换为小写字母。

SELECT LOWER(name)
FROM myTable;
UPPER()

UPPER() 函数用于将字符串转换为大写字母。

SELECT UPPER(name)
FROM myTable;
日期时间函数

日期时间函数用于对日期时间类型的数据执行操作。

常用的日期时间函数包括:

CURRENT_DATE

CURRENT_DATE 函数返回当前日期。

SELECT CURRENT_DATE;
CURRENT_TIME

CURRENT_TIME 函数返回当前时间。

SELECT CURRENT_TIME;
EXTRACT()

EXTRACT() 函数用于提取日期或时间的特定部分。

SELECT EXTRACT(YEAR FROM date_col)
FROM myTable;
DATEADD()

DATEADD() 函数用于将日期或时间加上指定的时间间隔。

SELECT DATEADD(MONTH, 3, date_col)
FROM myTable;
DATEDIFF()

DATEDIFF() 函数用于计算两个日期之间的时间间隔。

SELECT DATEDIFF(DAY, start_date, end_date)
FROM myTable;
数值函数

数值函数用于对数值类型的数据执行操作。

常用的数值函数包括:

ABS()

ABS() 函数返回数值的绝对值。

SELECT ABS(sales)
FROM myTable;
CEIL()

CEIL() 函数返回不小于指定数值的最小整数。

SELECT CEIL(sales)
FROM myTable;
FLOOR()

FLOOR() 函数返回不大于指定数值的最大整数。

SELECT FLOOR(sales)
FROM myTable;
ROUND()

ROUND() 函数返回指定数值的四舍五入值。

SELECT ROUND(sales, 2)
FROM myTable;
转换函数

转换函数用于将数据类型从一种类型转换为另一种类型。

常用的转换函数包括:

CAST()

CAST() 函数将一个数据类型转换为另一个数据类型。例如,将一个字符串转换为数字。

SELECT CAST('123' AS INTEGER)
FROM myTable;
TO_DATE()

TO_DATE() 函数将一个字符串转换为日期类型。

SELECT TO_DATE('2022-01-01', 'YYYY-MM-DD')
FROM myTable;
TO_CHAR()

TO_CHAR() 函数将一个日期类型转换为字符串类型。

SELECT TO_CHAR(date_col, 'YYYY-MM-DD')
FROM myTable;
分析函数

分析函数用于在数据集中对数据执行分析操作。

常用的分析函数包括:

RANK()

RANK() 函数为每个行返回一个排名值。

SELECT RANK() OVER (ORDER BY sales DESC)
FROM myTable;
DENSE_RANK()

DENSE_RANK() 函数为每个行返回一个密集排名值。

SELECT DENSE_RANK() OVER (ORDER BY sales DESC)
FROM myTable;
ROW_NUMBER()

ROW_NUMBER() 函数为每个行返回一个唯一的行号。

SELECT ROW_NUMBER() OVER (ORDER BY sales DESC)
FROM myTable;
LAG()

LAG() 函数返回前一个行的值。

SELECT LAG(sales) OVER (ORDER BY date_col)
FROM myTable;
LEAD()

LEAD() 函数返回下一个行的值。

SELECT LEAD(sales) OVER (ORDER BY date_col)
FROM myTable;

以上是 Teradata 的常用内置函数介绍,使用它们可以让数据分析更加高效和方便。