当前位置: 首页> 教育> 大学 > 网页设计流程分为哪几个步骤_深圳网站建设三把火_河北网站建设推广_百度官方版

网页设计流程分为哪几个步骤_深圳网站建设三把火_河北网站建设推广_百度官方版

时间:2025/7/11 23:35:54来源:https://blog.csdn.net/godlovedaniel/article/details/142468407 浏览次数:0次
网页设计流程分为哪几个步骤_深圳网站建设三把火_河北网站建设推广_百度官方版

目录

0 问题场景

1 数据准备

2 问题分析

2.1 需求一

2.2需求二

3 小结

想要进一步了解SQL这门艺术语言的,可以订阅我的专栏数字化建设通关指南,将在该专栏进行详细解析。

专栏 原价99,现在活动价39.9,按照阶梯式增长,还差3个名额将上升至59.9,直到恢复原价。

数字化建设通关指南


0 问题场景

有两张表,一张用户下单表user_purchase(用户ID粒度)包含用户ID、订单ID和下单消耗金额和一张用户维表user_info包含用户ID、用户年龄和用户是否实名认证。

user_purchase

user_info

需求一

  • 我想取出所有认证过的用户,如果用户没有认证过,就取出年龄大于18岁的用户

需求二

  • 在user_purchase的基础上加上用户年龄字段,但是user_purchase中存在用户ID大量为null的情况,和user_info关联的话会产生数据倾斜,需要做一下倾斜处理

1 数据准备

create table user_purchase as 
(select stack(4,1001,1,20,1002,2,10,1003,3,40,null,4,40) as(user_id,order_id,amount));

create table user_info as 
(select stack(3,1001,25,1,1002,30,1,1003,18,0) as(user_id,age,is_certified));

2 问题分析

2.1 需求一

  • 一般写法:可以按照是否认证过分成两个条件用或逻辑取出想要的数据

select*
from user_info
where is_certified=1 or (is_certified=0 and age > 18)
  •  优雅写法

使用if函数:如果认证过所有数据记录都是满足条件的,如果没有认证过要继续判断一下年龄是否满足大于18岁。这种写法更加易读简洁

selectuser_id,age,is_certified
from user_info
where if(is_certified=1, 1=1, age > 18) 

2.2需求二

  • 一般写法:在关联之前提前处理user_purchase中的user_id的null

selecta.user_id,a.order_id,a.amount,b.age
from(selectif(user_id is null, concat('user_', FLOOR(100 * RAND())), user_id) as user_id_process,user_id,order_id,amountfrom user_purchase) a
left join(selectuser_id,age,is_certifiedfrom user_info) b on a.user_id_process=b.user_id
  • 优雅写法 

使用if函数:在关联的时候对user_purchase中为null的user_id做处理

selecta.user_id,a.order_id,a.amount,b.age
from(selectuser_id,order_id,amountfrom user_purchase) a
left join(selectuser_id,age,is_certifiedfrom user_info) b on if(a.user_id is null, concat('user_', FLOOR(100 * RAND())), a.user_id)=b.user_id

3 小结

数仓开发中if函数是最最常用的函数之一,我们一般都是在select之后或者聚合函数中高频使用,在其他关键字后面使用较少。特定场景在where和join条件中使用if函数,还是相当优雅的

想要进一步了解SQL这门艺术语言的,可以订阅我的专栏数字化建设通关指南,将在该专栏进行详细解析。

专栏 原价99,现在活动价39.9,按照阶梯式增长,还差3个名额将上升至59.9,直到恢复原价。
 

数字化建设通关指南

主要内容:


(1)SQL进阶实战技巧

可以参考如下教程,具体链接如下

SQL很简单,可你却写不好?也许这才是SQL最好的教程


 

上面链接中的文章及技巧会不定期更新。

(2)数仓建模实战技巧和个人心得

       1)新人入职新公司后应如何快速了解业务?

       2)以业务视角看宽表化建设?

       3)  维度建模 or 关系型建模?

       4)业务模型与数据模型有什么区别?业务阶段的模型该如何建设?

       5)业务指标体系该如何建设?指标体系该如何维护?指标平台应如何建设?指标体系                           该由谁来搭建?

       6)如何优雅设计DWS层?DWS层模型好坏该如何评价?

       7)指标发生异常,该如何排查?应从哪些方面入手寻找问题点?

       8) 数据架构的选择,mpp or hadoop?

       9)数仓团队应如何体现自己的业务价值,讲好数据故事?

       10)BI与大数据有什么关系?BI与信息化、数字化之间有什么关系?BI与报表之间的关                          系?

       11)数据部门如何与业务部门沟通,并规划指引业务需求?

文章不限于以上内容,有新的想法也会及时更新到该专栏。

具体专栏链接如下:

数字化建设通关指南_莫叫石榴姐的博客-CSDN博客

关键字:网页设计流程分为哪几个步骤_深圳网站建设三把火_河北网站建设推广_百度官方版

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: