Apache Presto - SQL函数

截至目前,我们正在讨论在Presto上运行一些简单的基本查询.本章将讨论重要的SQL函数.

数学函数

数学函数对数学公式起作用.下表详细描述了函数列表.

S.No.功能&说明
1.abs(x)

返回 x的绝对值

2.cbrt(x)

返回 x的立方根

3.ceiling(x)

返回 x 值四舍五入到最接近的整数

4.

ceil(x)

上限的别名(x)

5.度(x)

返回 x 的程度值

6.e(x)

返回欧拉数的双精度值

7.

exp(x)

返回欧拉数的指数值

8.floor(x)

返回 x 向下舍入到最接近的整数

9.

from_base(字符串,基数)

返回被解释为基数的字符串的值

10.

ln(x)

返回的自然对数x

11 .log2(x)

返回基数2对数of x

12.

log10(x)

返回的基数10对数x

13 .

log(x,y)

返回基数 y 对数 x

14.mod(n,m)

返回 n 的模数(余数)除以 m

15.

pi()

返回pi值.结果将作为双值返回

16.power(x,p)

将值'p'的功率返回到 x

17.

pow(x,p)

电力别名(x,p)

18.radians(x)

以度弧度转换角度 x

19.

rand()

弧度的别名()

20.random()

返回伪随机值

21.

rand(n)

随机的别名()

22.round(x)

返回x的舍入值

23.

round(x,d)

x 舍入值对于'd'小数位

24.

sign(x)

返回signum函数of x,即

0如果参数为0

1如果参数大于0

-1如果参数小于0

对于双参数,该函数另外返回 :

NaN如果argum ent是NaN

1如果参数为+ Infinity

-1如果参数为-Infinity

25.sqrt(x)

返回 x的平方根

26.to_base(x,radix)

返回类型是弓箭手.结果作为 x 的基本基数返回

27.截断(x)

截断 x的值

28.width_bucket(x,bound1, bound2,n)

返回 x 指定的bound1和bound2边界以及n个存储桶的bin编号

29.width_bucket(x,bins)

根据指定的bin返回 x 的bin号.数组箱

三角函数

触发onometry函数参数表示为radians().下表列出了函数.

S.No功能&说明
1.acos(x)

返回反余弦值(x)

2.

asin(x)

返回反正弦值(x)

3.

atan(x)

返回反正切值(x)

4.atan2(y, x)

返回反正切值(y/x)

5.

cos(x)

返回余弦值(x)

6.cosh(x)

返回双曲余弦值(x)

7.sin(x)

返回正弦值(x)

8.

tan(x)

返回正切值(x)

9.

tanh(x)

返回双曲正切值(x)

按位函数

下表列出了按位函数.

S.No功能&说明
1.bit_count(x,bits)

计算位数

2.bitwise_and(x,y)

对两位执行按位AND运算, x y

3.bitwise_or(x,y)

两位之间的按位OR运算 x,y

4.bitwise_not(x)

x

$ b的按位运算$ b
5.bitwise_xor(x,y)

x,y

的XOR运算字符串函数

下表列出了字符串函数.

S.No功能&说明
1.concat(string1,...,stringN)

连接给定的字符串

2.length(string)

返回给定字符串的长度

3.lower(string)

返回字符串的小写格式

4.upper(string)

返回给定字符串的大写格式

5.lpad(字符串,大小,padtring)

给定字符串的左边距

6.ltrim(string)

从字符串中删除前导空格

7.replace(string,search,replace)

替换字符串值

8.reverse(string)

撤销为字符串执行的操作

9.rpad(字符串,大小,padtring)

给定字符串的右边填充

10.rtrim(string)

从字符串中删除尾随空格

11.split(字符串,分隔符)

在分隔符上拆分字符串并返回最大限度的数组

12.split_part(字符串,分隔符,索引)

在分隔符上拆分字符串并返回字段索引

13.strpos(string,substring)

返回字符串中子字符串的起始位置

14.substr(string,start)

返回给定字符串的子字符串

15.substr(string,start,length )

返回具有特定长度的给定字符串的子字符串

16.trim(string)

从字符串中删除前导和尾随空格

日期和时间函数

下表列出了日期和时间函数.

S.No功能&说明
1.current_date

返回当前日期

2.current_time

返回当前时间

3.current_timestamp

返回当前时间戳

4.current_timezone()

返回当前时区

5 .now()

返回当前日期,带时区的时间戳

6.localtime

返回当地时间

7.localtimestamp

返回本地时间戳

常规表达式函数

下表列出了正则表达式函数.

S.No功能&说明
1.regexp_extract_all(string,pattern)

返回与模式的正则表达式匹配的字符串

2.regexp_extract_all(string,pattern,group)

返回正则表达式匹配的字符串模式和小组

3.regexp_extract(string,pattern)

返回第一个子字符串与模式的正则表达式匹配

4.regexp_extract(string,pattern,group)

返回模式和组的正则表达式匹配的第一个子字符串

5.regexp_like(string,pattern)

返回模式的字符串匹配项.如果返回字符串,则值为true,否则为false

6.regexp_replace(string,pattern)

用表达式替换表达式匹配的字符串实例

7.regexp_replace(字符串,模式,替换)

将表达式匹配的字符串实例替换为模式和替换

8.regexp_split(string,pattern)

拆分给定模式的正则表达式

JSON函数

下表列出了JSON函数.

S.No功能&说明
1.json_array_contains(json,value)

检查json数组中是否存在该值.如果该值存在,则返回true,否则为false

2.json_array_get(json_array,index)

获取json数组中索引的元素

3.json_array_length(json)

返回json数组中的长度

4.json_format(json)

返回json结构格式

5.json_parse(string)

将字符串解析为js on

6.json_size(json,json_path)

返回值的大小

网址功能

下表列出了URL函数.

S .No功能&说明
1.url_extract_host(url)

返回网址的主机

2.url_extract_path(url)

返回URL的路径

3.url_extract_port(url)

返回URL的端口

4.url_extract_protocol(url)

返回URL的协议

5.url_extract_query(url)

返回URL的查询字符串

汇总函数

下表列出了聚合函数.

S.No功能&说明
1.

avg(x)

返回给定值的平均值

2.min(x,n)

从两个值返回最小值

3.max(x,n)

从两个值返回最大值

4.sum(x)

返回值之和

5.coun t(*)

返回输入行数

6.count(x )

返回输入值的计数

7.校验和(x)

返回 x的校验和

8.任意(x)

返回 x的任意值

颜色函数

下表列出了颜色函数.

S.No功能&说明
1.bar(x,width)

使用rgb low_color和high_color

$ b渲染单个条形图$ b
2.bar(x,width,low_color,high_color)

为指定宽度呈现单个栏

3.color(string)

返回输入字符串的颜色值

4.渲染(x,颜色)

使用A渲染特定颜色的值x NSI颜色代码

5.渲染(b)

接受布尔值b并渲染a使用ANSI颜色代码的绿色true或红色false

6.

rgb(红色,绿色,蓝色)

返回颜色值捕获作为int参数提供的三个分量颜色值的RGB值,范围从0到255

数组函数

下表列出了数组函数.

S.No功能&说明
1.array_max(x)

查找数组中的最大元素

2.array_min(x)

查找数组中的min元素

3.array_sort(x)

对数组中的元素进行排序

4.array_remove(x,element)

从数组中删除特定元素

5.concat(x,y)

连接两个数组

6.包含(x,元素)

查找数组中的给定元素.如果存在则返回True,否则返回false

7.array_position(x,element)

在数组中找到给定元素的位置

8.array_intersect(x,y)

在两个数组之间执行交集

9.element_at(array,index)

返回数组元素位置

10.切片(x,开始,长度)

切片a rray具有特定长度的元素

Teradata函数

下表列出了Teradata函数.

S.No功能&说明
1.index(string,substring)

返回给定子字符串的字符串索引

2.substring(string,start)

返回给定字符串的子字符串.你可以在这里指定起始指数

3.substring(string,start,length)

返回给定字符串的子字符串,用于特定的起始索引和字符串的长度