ClickHouse常用转换函数整理_clickhouse字符串转数字(4)

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Golang全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Go语言开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024b (备注go)
img

正文

2.5 查看数据类型
函数用途举例结果
toTypeName()返回数据的类型toTypeName(toString(‘123’))toTypeName(toDate(‘2018-12-24’))返回 String返回 Date

3、字符串操作

3.1 基本字符串操作
函数用途举例结果
empty()判断字符串是空为1,否则为0empty(’’)empty(‘123a’)返回 1返回 0
notEmpty()判断字符串是非空为1,否则为0notEmpty(’’)notEmpty(‘123a’)返回 0返回 1
length()返回字符串的长度length(’’)length(‘123a’)返回 0返回 4
lower()将字符串转为小写lower(‘aBc’)返回 abc
upper()将字符串转为大写upper(‘aBc’)返回 ABC
reverse()将字符串反转reverse(‘abc’)返回 cba
substring(s, offset, length)字符串截取substring(‘123abcABC’, 2, 3)返回 23a
appendTrailingCharIfAbsent(s, c)如果字符串s非空,则将s后追加一个字符c(s最后一个字符与c不同),否则不处理appendTrailingCharIfAbsent(‘123abc’, ‘b’)appendTrailingCharIfAbsent(‘123abc’, ‘c’)返回 123abcb返回 123abc
3.2 字符串查找
函数用途举例结果
match(haystack,pattern)字符串正则匹配,返回0或1match(‘avhsca’,'vh’)返回 1
extract(haystack,pattern)返回匹配到的第一个子串extract(‘iioomAj12123124OOBJB’, ‘\d+’)返回 12123124
extractAll(haystack,pattern)返回匹配到的所有子串,输出列表extractAll(‘iioomAj12123124OOBJ123B’, ‘\d+’)返回 [12123124,123]
like(haystack,pattern)匹配到的数据返回1,否则返回0like(‘avhsca’,’%vh%’)like(‘avhsca’,’%vabjh%’)返回 1返回 0
notLike(haystack, pattern)与like()函数相反notLike(‘avhsca’,’%vh%’)notLike(‘avhsca’,’%vabjh%’)返回 0返回 1
3.3 字符串替换
函数用途举例结果
replaceOne(haystack,pattern,replacement)替换第一个匹配到的patternreplaceOne(‘asd123cbbj464sd’, ‘sd’, ‘-’)返回 a-123cbbj464sd
replaceAll(haystack,pattern,replacement)替换所有匹配到的patternreplaceOne(‘asd123cbbj464sd’, ‘sd’, ‘-’)返回 a-123cbbj464-
replaceRegexpOne(haystack, pattern, replacement)正则匹配替换第一个匹配到的patternreplaceRegexpOne(‘Hello, World!’, ‘o’, '- ')返回 Hell- , World!
replaceRegexpAll(haystack,pattern,replacement)正则匹配替换所有匹配到的patternreplaceRegexpAll(‘Hello, World!’, ‘^’, 'here: ')replaceRegexpAll(‘Hello, World!’, ‘o’, '-- ')返回 here: Hello, World!返回 Hell-- , W-- rld!
3.4 字符串分割
函数用途举例结果
splitByChar(separator, s)以单个字符分割字符串splitByChar(’-’, ‘qw-asaf-asfqw-2312-asd’)返回 [‘qw’,‘asaf’,‘asfqw’,‘2312’,‘asd’]
splitByString(separator, s)以单个或多个字符分割字符串splitByString(’-’, ‘qw-asaf-asfqw-2312-asd’)splitByString(’-a’, ‘qw-asaf-asfqw-2312-asd’)返回 [‘qw’,‘asaf’,‘asfqw’,‘2312’,‘asd’]返回 [‘qw’,‘saf’,‘sfqw-2312’,‘sd’]
3.5 字符串拼接
函数用途举例结果
concat(s1,s2,…)将字符串拼接concat(‘123’, ‘abc’, ‘ABC’)返回 123abcABC

4、条件语句

函数用途举例结果
if(cond,then,else)条件输出if(1 > 2, ‘正确’, ‘错误’)返回 错误
multiIf(cond_1, then_1, cond_2, then_2…else)多条件输出multiIf(1 > 2, ‘正确’, 2 < 0, ‘正确’, ‘错误’)返回 错误

5、数学函数

函数用途举例结果
e()返回e的值e()返回 2.718281828459045
pi()返回pi的值pi()返回 3.141592653589793
exp(x)返回e的x次方exp(1)返回 2.718281828459045
exp2(x)返回2的x次方exp2(2)返回 4
exp10(x)返回10的x次方exp10(1)返回 10
log(x)返回log以e为底的对数值log(e())返回 1
log2(x)返回log以2为底的对数值log2(2)返回 1
log10(x)返回log以10为底的对数值log10(100)返回 2
sqrt(x)对x开平方sqrt(4)返回 2
cbrt(x)对x开立方cbrt(8)返回 2
pow(x, y)返回x的y次方pow(2, 3)返回 8

6、舍入函数

函数用途举例结果
floor(x[, N])向下取数floor(123.883, 1)floor(123.883, -1)返回 123.8返回 120
ceil(x[, N])向上取数ceil(123.883, 1)ceil(123.883, -1)返回 123.9返回 130
round(x[, N])四舍五入round(123.883, 1)round(123.883, -1)返回 123.9返回 120

7、URL操作函数

| 函数 | 用途 | 举例 | 结果 |
| protocol() | 返回URL的协议类型 | protocol(‘http://www.baidu.com.cn’) | 返回 http |
| domain() | 返回URL的域名 | domain(‘http://www.baidu.com.cn’) | 返回 www.baidu.com.cn |
| domainWithoutWWW() | 返回URL不带www的域名 | domainWithoutWWW(‘http://www.baidu.com.cn’) | 返回 baidu.com.cn |
| topLevelDomain() | 返回顶级域名 | topLevelDomain(‘http://www.baidu.com.cn’) | 返回 cn |
| firstSignificantSubdomain() | Returns the “first significant subdomain”. | firstSignificantSubdomain(‘http://www.baidu.com.cn’) | 返回 baidu |
| cutToFirstSignificantSubdomain() | Returns the part of the domain that includes top-level subdomains up to the “first significant subdomain” (see the explanation above). | cutToFirstSignificantSubdomain(‘http://www.baidu.com.cn’) | 返回 baidu.com.cn |
| path() | 返回URL的路径 | path(‘https://www.baidu.com/s?wd=SQL%E4%B8%AD%E7%9A%84split’) | 返回 /s |
| pathFull() | 返回URL的完整路径 | pathFull(‘https://www.baidu.com/s?wd=SQL%E4%B8%AD%E7%9A%84split’) | 返回 /s?wd=SQL%E4%B8%AD%E7%9A%84split |
| queryString() | 返回URL的参数(查询字符串) | queryString(‘https://www.baidu.com/s?wd=SQL%E4%B8%AD%E7%9A%84split’) | 返回 wd=SQL%E4%B8%AD%E7%9A%84split |
| extractURLParameters() | 以列表的形式返回URL的参数 | extractURLParameters(‘https://www.baidu.com/s?wd=SQL%E4%B8%AD%E7%9A%84split&ur=qwguq’) | 返回 [‘wd=SQL%E4%B8%AD%E7%9A%84split’,‘ur=qwguq’] |
| extractURLParameterNames() | 以列表的形式返回URL的参数名 | extractURLParameterNames(‘https://www.baidu.com/s?wd=SQL%E4%B8%AD%E7%9A%84split&ur=qwguq’) | 返回 [‘wd’,‘ur’] |
| cutQueryString() | 返回URL?(参数)前面的内容 | cutQueryString(‘https://www.baidu.com/s?wd=SQL%E4%B8%AD%E7%9A%84split&ur=qwguq’) | 返回 https://www.baidu.com/s |

8、IP操作函数

函数用途举例结果
IPv4StringToNum(s)将IPV4转为数值,非IPV4的转化为0IPv4StringToNum(‘23.217.198.69’)IPv4StringToNum(‘adwh.124.qwfqw’)返回 400148037返回 0
IPv4NumToString(num)将数值转为IPV4IPv4NumToString(400148037)返回 23.217.198.69
IPv4NumToStringClassC(num)将数值转为IPV4,且最后的段位用xxx代替IPv4NumToStringClassC(400148037)返回 23.217.198.xxx

9、表操作

9.1 表连接操作
函数用途举例结果
INNER JOIN内连接A表 INNER JOIN B表A表与B表的公共部分
LEFT OUTER JOIN左外连接A 表 LEFT OUTER JOIN B表A表不在B表中的部分
RIGHT OUTER JOIN右外连接A 表 RIGHT OUTER JOIN B表B表不在A表中的部分
FULL OUTER JOIN全外连接A 表 FULL OUTER JOIN B表A与B表全部,没有为NULL

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Go)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Go)
[外链图片转存中…(img-1xkyTcqu-1713292598877)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 30
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值