截至目前,我们正在讨论在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) 返回给定字符串的子字符串,用于特定的起始索引和字符串的长度 |