使用软件/语言遇到的坑--更新中
hiveSQL遇到的坑
1. A left join B之后B或总体结果的条数变少
可能原因:1. A的条数少,2. A或B的groupby 条件是不是有空,where 中如果有字段限制,字段为空的话会被过滤掉,需要添加case when 字段 is null 如何处理 end .
2.宽表如何转为长表
explode() 函数可以把一个string字段拆解为长字段,但是如果想要取对应的其他字段信息,需要结合 lateral view (底层逻辑是依据原始的对应关系 inner join explode()的结果)
详细示例见lateral view explode()详细有原理
SELECT
id
,colAliasName
from t1
LATERAL VIEW explode(split(t.name,',')) tableAliasName as colAliasName
3. rlike 与like
like 可以匹配确定的元素,rlike可以模糊匹配
rlike使用正则表达式模糊匹配
--模糊匹配取出多个元素 rlike 语句
select
count(1)
,a
from t1
where a rlike '.应用市场|SEM.'
group by a
--like 语句
select
count(1)
,a
from t1
where (a like '%应用市场%') or (a like '%SEM%')
group by a
tableau 的坑
1. 数据更新问题,刷新数据源,然后在工作表中再刷新一次。
有人试过7G数据,2000W行。
Q、
怎么更改到周一开始?
- 数据关系:关联表、数据关系?物理关联先做筛选等再关联的操作。。
- LOD:更改计算粒度的功能。函数:fixed、include、exclude
fixed示例: {fixed[A]: avg([B])},如果想固定多个字段?逗号分隔即可。细粒度转换成粗力度的。
include示例:在fixed函数之后计算,用include的字段去展示
exclude示例:在fixed函数之后计算,用exclude的字段之外的字段去展示 - 故事、仪表盘里直接导出PDF会截断表(有下滑的那种),可以直接把工作表导出成PDF就不截断。