当前位置: 首页> 娱乐> 八卦 > 如何免费网络营销推广_高端网站建设哪里好_seo诊断工具有哪些_seo网站推广方式

如何免费网络营销推广_高端网站建设哪里好_seo诊断工具有哪些_seo网站推广方式

时间:2025/7/14 21:59:16来源:https://blog.csdn.net/weixin_48935611/article/details/146931921 浏览次数:0次
如何免费网络营销推广_高端网站建设哪里好_seo诊断工具有哪些_seo网站推广方式

横扫SQL面试

在这里插入图片描述

电商平台的"销量Top10商品"🛍️,内容社区的"热度Top5文章“”🔥,还是金融领域的"交易额Top3客户"💰——TopN问题无处不在!

无论是日常业务分析📊,还是技术面试💡,能否优雅地解决TopN问题,往往决定了你是一个"只会写基础查询"的SQL用户🧑‍💻,还是一个"能高效处理复杂需求"的数据专家🎯!

TopN问题 前置知识

  1. 窗口函数

    • row_number(): 无并列排名 (1,2,3,4)
    • rank(): 有并列会跳过名次 (1,2,2,4)
    • dense_rank(): 有并列不跳名次 (1,2,2,3)
  2. 执行流程

    原始数据
    数据聚合
    计算排名
    筛选TopN

话不多说——直接上题:🎈🎈🎈🎈🎈🎈🎈

一、销量Top10商品🛍️

在电商业务场景中,为了更好地了解商品销售情况,以便进行库存管理、营销推广等工作,需要找出 2023 年每个商品类目下销量最高的前 10 个商品。

在统计销量时,需要考虑并列情况,即如果有多个商品销量相同且都能进入前 10 名,这些商品都应被选出来。

字段名类型描述
order_idINT订单的唯一标识符,作为主键
product_idINT商品的唯一标识符
category_idINT商品类目的唯一标识符
category_nameVARCHAR(50)商品类目的名称
product_nameVARCHAR(100)商品的名称
sale_dateDATE商品销售的日期
quantityINT商品的销售数量
priceDECIMAL(10, 2)商品的销售价格

思路💡

  1. 筛选出 2023 年的订单数据。
  2. 按商品类目和商品分组,计算每个商品的总销量。

在这里插入图片描述

  1. 对每个商品类目内的商品按总销量降序排名。
  2. 筛选出排名前 10 的商品。

在这里插入图片描述

完整代码💻🚀💻🚀:

-- 第一步:创建一个公共表表达式 (CTE) category_sales,用于计算每个商品在 2023 年的总销量
with category_sales as (-- 选择需要的列,包括商品类目 ID、类目名称、商品 ID、商品名称和总销量select category_id,category_name,product_id,product_name,-- 使用 sum 函数计算每个商品的总销量sum(quantity) as total_salesfrom orders-- 筛选出 2023 年的订单数据where extract(year from sale_date) = 2023-- 按商品类目和商品分组group by category_id, category_name, product_id, product_name
),
-- 第二步:创建另一个 CTE ranked_products,用于对每个商品类目内的商品按总销量降序排名
ranked_products as (select category_id,category_name,product_id,product_name,total_sales,-- 使用 dense_rank 函数对每个商品类目内的商品按总销量降序排名dense_rank() over (partition by category_id order by total_sales desc) as sales_rankfrom category_sales
)
-- 第三步:从 ranked_products 中选择排名前 10 的商品
select category_id,category_name,product_id,product_name,total_sales
from ranked_products
-- 筛选出排名前 10 的商品
where sales_rank <= 10;

二、社区热度Top5文章🔥

在内容社区里,为了向用户推荐热门文章,需要计算过去 7 天各板块内综合热度排名前 5 的文章。

综合热度的计算方式为:点赞数×0.6 + 收藏数×0.3 + 评论数×0.1。通过这种方式可以更全面地衡量文章在社区内的受欢迎程度。

字段名类型描述
article_idINT文章的唯一标识符,作为主键
board_idINT文章所属板块的唯一标识符
board_nameVARCHAR(50)文章所属板块的名称
titleVARCHAR(200)文章的标题
publish_timeDATETIME文章的发布时间
likesINT文章获得的点赞数
favoritesINT文章获得的收藏数
commentsINT文章获得的评论数

思路💡

  1. 筛选出过去 7 天的文章数据。
  2. 计算每篇文章的综合热度。

在这里插入图片描述

  1. 对每个板块内的文章按综合热度降序排名。
  2. 筛选出排名前 5 的文章。

在这里插入图片描述

完整代码:💻🚀💻🚀

-- 第一步:创建一个 CTE article_heat,用于计算每篇文章在过去 7 天的综合热度
with article_heat as (select article_id,board_id,board_name,title,-- 计算综合热度:点赞数 * 0.6 + 收藏数 * 0.3 + 评论数 * 0.1(likes * 0.6 + favorites * 0.3 + comments * 0.1) as heat_scorefrom articles-- 筛选出过去 7 天的文章数据where publish_time >= current_date - interval 7 day
),
-- 第二步:创建另一个 CTE ranked_articles,用于对每个板块内的文章按综合热度降序排名
ranked_articles as (select article_id,board_id,board_name,title,heat_score,-- 使用 dense_rank 函数对每个板块内的文章按综合热度降序排名dense_rank() over (partition by board_id order by heat_score desc) as heat_rankfrom article_heat
)
-- 第三步:从 ranked_articles 中选择排名前 5 的文章
select article_id,board_id,board_name,title,heat_score
from ranked_articles
-- 筛选出排名前 5 的文章
where heat_rank <= 5;
article_idboard_idboard_nametitleheat_score
32娱乐明星新动态216
42娱乐电影预告189
11科技最新科技趋势148
21科技AI 技术突破116.5
53体育赛事回顾130
63体育运动员风采118

三、交易额Top3客户💰

在金融业务中,为了对不同区域的优质客户进行精准营销和服务,需要按季度统计 2023 年各区域交易金额最高的 3 个客户,并且要求显示客户层级。

字段名类型描述
trans_idINT交易的唯一标识符,作为主键
client_idINT客户的唯一标识符
client_nameVARCHAR(100)客户的名称
client_levelVARCHAR(20)客户的层级
regionVARCHAR(50)客户所在的区域
trans_amountDECIMAL(12, 2)交易的金额
trans_dateDATE交易的日期

思路💡

  1. 筛选出 2023 年的交易数据。
  2. 按区域、季度和客户分组,计算每个客户在每个季度的总交易金额。

在这里插入图片描述

  1. 对每个区域和季度内的客户按总交易金额降序排名。
  2. 筛选出排名前 3 的客户。

在这里插入图片描述

完整代码:💻🚀💻🚀

-- 第一步:创建一个 CTE quarterly_transactions,用于计算每个客户在每个季度的总交易金额
with quarterly_transactions as (select client_id,client_name,client_level,region,-- 提取交易日期的季度extract(quarter from trans_date) as quarter,-- 使用 sum 函数计算每个客户在每个季度的总交易金额sum(trans_amount) as total_trans_amountfrom transactions-- 筛选出 2023 年的交易数据where extract(year from trans_date) = 2023-- 按区域、季度和客户分组group by client_id, client_name, client_level, region, extract(quarter from trans_date)
),
-- 第二步:创建另一个 CTE ranked_clients,用于对每个区域和季度内的客户按总交易金额降序排名
ranked_clients as (select client_id,client_name,client_level,region,quarter,total_trans_amount,-- 使用 dense_rank 函数对每个区域和季度内的客户按总交易金额降序排名dense_rank() over (partition by region, quarter order by total_trans_amount desc) as trans_rankfrom quarterly_transactions
)
-- 第三步:从 ranked_clients 中选择排名前 3 的客户
select client_id,client_name,client_level,region,quarter,total_trans_amount
from ranked_clients
-- 筛选出排名前 3 的客户
where trans_rank <= 3;

在这里插入图片描述

关键字:如何免费网络营销推广_高端网站建设哪里好_seo诊断工具有哪些_seo网站推广方式

版权声明:

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

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

责任编辑: