SQL常用语法、函数笔记(不定期更新)

2 篇文章 0 订阅
  1. 今天在刷LeetCode SQL题目的时候,遇到一个查找ID是否为奇数的题目,于是发现了一个比较神器的语法。
-- 这样就判断出来是否为奇数了。 如果要偶数就用2,可以结合where条件进行过滤。
id & 1
  1. 最近在使用数仓的时候,使用case when 语法,于是总结了一下,找到了两种方式
-- 方式一
case 
when tb1.os = 'android' then 'android'
when tb1.os = 'ios' then 'IPhone'
else 'PC'
end as os,
-- 方式二
case tb1.os 
when 'android' then 'android'
when 'ios' then 'IPhone'
else 'PC'
end as os,
  1. 常用的字符串截取
	substr(string A,string start,int len)

说明:返回字符串A从start位置开始,长度为len的字符串
4. 字符串拼接

concat(string A, string B...)

说明:返回输入字符串连接后的结果,支持任意个输入字符串,但是只有其中有一个字符串是null,那么最终的结果都是null。

concat_ws(string A, string B...)

说明:这个和concat相似,只是把其他字符通过字符串A进行拼接,并且其中有null值是自动去掉的。
5. 获取字段字符和字节长度函数

length(coloum)
octet_length(coloum)

说明:length() 函数获取字段字符长度,octet_length() 函数获取字段字节长度。
6. yyyyMMddHHmmss格式日期转换为yyyy-MM-dd HH:mm:ss格式

select from_unixtime(unix_timestamp('20200929114509','yyyyMMddHHmmss'),'yyyy-MM-dd HH:mm:ss');
  1. hive string->int 数据类型转换方法。
	select 
		cast(col as int  ) as col 
	from table_name

说明:使用cast as 进行数据类型转换。

  1. left()和rigth() 函数
	left(field, 3) -> substr(field, 0, 3)
	right(field, 3) -> substr(field, -3)

说明:和substr()函数类似。
9. coalesce() 函数

	select coalesce(null, 0);  -- 0
	select coalesce(null, null); -- null

说明:coalesce函数需要传递多个参数,返回第一个非NULL的参数,如果所有参数都为NULL,则coalesce函数返回NULL。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值