laterval view 常和explode一起使用用来行(单个字段中有多个指定分隔符的字段)转列
lateral view 就像是有链接了一个表 LATERAL 没有V
explode将map 或array转换成一个一个的单独字段
select explode(myCol) from table
select pageid,newAdid from table lateral view explode (adid_list) as newAdid ;
collect_set 去重作为一个集合
collect_list 全部作为一个集合
一般用在group by中
select id,collect(stage) from table group by id 将这个组中的数据汇聚到set或list中
比如说原表为类型为 datetime 2018-01-22 00:00:00
在sql中转换 采用 DATE_FORMAT 函数
DATE_FORMAT(CREATE_TIME,'%Y-%m-%d')=DATE_FORMAT(NOW(),'%Y-%m-%d')
ifnull(xxx,0)
date_add(DATE_FORMAT(create_time,'%Y-%m-%d'),INTERVAL 1 DAY)=DATE_FORMAT(NOW(),'%Y-%m-%d') where DATE_FORMAT(input_date,'%Y-%m-%d')=DATE_FORMAT(NOW(),'%Y-%m-%d')
DATE_SUB(DATE_FORMAT(now(),'%Y-%m-%d'),INTERVAL 1 DAY)
date_add(to_date(from_unixtime(unix_timestamp(),'yyyy-MM-dd HH:mm:ss')),-1)
from_unixtime(unix_timestamp(),'yyyy-MM-dd HH:mm:ss')
CASE
WHEN DATE_FORMAT( a.created_at, '%Y-%m-%d' ) = DATE_SUB( DATE_FORMAT( now( ), '%Y-%m-%d' ), INTERVAL 1 DAY ) THEN
1 ELSE 0
END
is not null exist in
mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} -e "select xxxx" | cut -d " " -f 1 | tail -1
取mysql sql执行返回的结果
contact_ws(separator,string1,string2) 链接字符 with separator 第一个为分隔符
select id,concat_ws(",",collec_set(stage)) from table group by id;
split(字段,“,”)按照,分割 然后在explode展开 explode(split(xx,","))
substr(字段,1,4)从1开始截取4位
get_json_object
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
map array
round 四舍五入
cast (exp as type )强制转类型
from_unixtime(timestamp,format) 将时间戳转换成具体指定的格式
unix_timestamp(时分秒) 转换成时间戳
to_date()日期
year()
date_add()
date_sub()
case a when b then c
concat 链接字符
get_json_object(string,path) $.k=v $.k.second.[0]
lpad()截取字符 从左边 rpad()从右边
itrim() 去掉左边的空格
parse_url() 解析url
str_to_map()
count(distinct )
regexp_replace
collect_set() 去重的集合
collect_list() 全部的集合,比如订单编号集合,合并
explode(array) 返回数组里面的值
explode(map) 返回map kv
posexplode(array) 下标和数据
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////