当前位置: 首页 > wzjs >正文

网站如何做伪静态北京seo薪资

网站如何做伪静态,北京seo薪资,PS做网站页面尺寸,新闻门户网站建设一、窗口函数核心概念 ​​窗口(Window)​​ 窗口是数据行的集合,由OVER()子句定义。它决定了函数计算的“数据范围”,可以是一个分区的全部行、当前行前后的行,或动态变化的子集。 ​​语法结构​​ SELECT window_f…

一、窗口函数核心概念

  1. ​窗口(Window)​
    窗口是数据行的集合,由OVER()子句定义。它决定了函数计算的“数据范围”,可以是一个分区的全部行、当前行前后的行,或动态变化的子集。

  2. ​语法结构​

    SELECT window_function(column) OVER ([PARTITION BY partition_expression][ORDER BY order_expression [ASC|DESC]][frame_clause]) AS alias
    FROM table;
    • ​PARTITION BY​​:将数据划分为多个分区(类似GROUP BY),函数在每个分区内独立计算。
    • ​ORDER BY​​:定义分区内数据的排序方式,影响窗口函数的计算顺序。
    • ​frame_clause​​:定义窗口的具体范围(如当前行及其前后N行)。

二、窗口函数分类及示例

1. 聚合类窗口函数

普通聚合函数(如SUMAVGCOUNT)结合OVER()使用,实现累计、移动平均等效果。

​示例:计算累计销售额​

SELECT order_date,amount,SUM(amount) OVER (ORDER BY order_date) AS cumulative_sum
FROM sales;

结果:

order_date | amount | cumulative_sum
-------------------------------------
2023-01-01 | 100    | 100
2023-01-02 | 200    | 300
2023-01-03 | 150    | 450

2. 排名类窗口函数
  • ROW_NUMBER()​:为每行分配唯一序号(相同值也会不同)。
  • RANK()​:相同值的行排名相同,后续序号跳跃(如1,1,3)。
  • DENSE_RANK()​:相同值的行排名相同,后续序号连续(如1,1,2)。

​示例:按销售额排名​

SELECT product,sales,ROW_NUMBER() OVER (ORDER BY sales DESC) AS row_num,RANK() OVER (ORDER BY sales DESC) AS rank,DENSE_RANK() OVER (ORDER BY sales DESC) AS dense_rank
FROM products;

结果:

product | sales | row_num | rank | dense_rank
--------------------------------------------
A       | 500   | 1       | 1    | 1
B       | 500   | 2       | 1    | 1
C       | 400   | 3       | 3    | 2

3. 分布类窗口函数
  • PERCENT_RANK()​:计算行的相对排名百分比(范围[0,1])。
  • CUME_DIST()​:计算行的累积分布(当前行及其之前行的占比)。

​示例:计算销售额分布​

SELECT product,sales,PERCENT_RANK() OVER (ORDER BY sales) AS percent_rank,CUME_DIST() OVER (ORDER BY sales) AS cume_dist
FROM products;

4. 前后函数
  • LAG(column, N)​:获取当前行​​前N行​​的值。
  • LEAD(column, N)​:获取当前行​​后N行​​的值。

​示例:计算销售额环比增长​

SELECT month,sales,LAG(sales, 1) OVER (ORDER BY month) AS prev_sales,(sales - LAG(sales, 1) OVER (ORDER BY month)) / LAG(sales, 1) OVER (ORDER BY month) AS growth_rate
FROM monthly_sales;

结果:

month | sales | prev_sales | growth_rate
----------------------------------------
Jan   | 1000  | NULL       | NULL
Feb   | 1200  | 1000       | 0.2
Mar   | 1500  | 1200       | 0.25

三、窗口帧(Frame Clause)

通过ROWSRANGE定义窗口的具体范围:

  • ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW​:从分区开始到当前行。
  • ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING​:当前行的前一行到后一行。

​示例:计算3个月移动平均​

SELECT month,sales,AVG(sales) OVER (ORDER BY monthROWS BETWEEN 2 PRECEDING AND CURRENT ROW) AS moving_avg
FROM monthly_sales;

结果:

month | sales | moving_avg
---------------------------
Jan   | 100   | 100.0
Feb   | 200   | 150.0
Mar   | 150   | 150.0
Apr   | 300   | 216.7

四、使用场景

  1. ​排名与分组排名​​:按部门、时间等分区后排序。
  2. ​累计计算​​:累计销售额、年累计增长率。
  3. ​移动统计​​:移动平均、移动求和。
  4. ​数据对比​​:当前行与前一行的差值或比率。

五、注意事项

  1. ​MySQL版本​​:窗口函数需MySQL 8.0+,旧版本不支持。
  2. ​性能优化​​:合理使用索引和分区,避免全表扫描。
  3. ​执行顺序​​:窗口函数在WHEREGROUP BYHAVING之后执行。
http://www.dtcms.com/wzjs/73586.html

相关文章:

  • html5 素材网站店铺推广方法
  • 怎么去接网站来做百度竞价推广自己可以做吗
  • 网站开发必备人员百度集团总部在哪里
  • magento 做的最牛逼的中文网站无锡网站制作
  • 义乌网站建设多少钱推广方案的推广内容怎么写
  • 网站 建设 网站设计公司想卖产品怎么推广宣传
  • 电脑在哪里制作网站百度投诉中心
  • 2免费做网站网络优化
  • 品牌授权seo外包服务方案
  • 用群晖如何做公司网站营销推广文案
  • 给赌场做网站百度极速版免费下载安装
  • 怎么用dedecms搭建网站济南百度竞价开户
  • 个人怎么自己建网站优化关键词的方法有哪些
  • 网站左右箭头素材免费推广软件平台
  • 抄袭网站后台会侵权吗免费建网站软件哪个好
  • 郑州企业建站系统模板武汉网络推广公司
  • 邢台做网站改版广告平台网站有哪些
  • 旅游做的视频网站排名优化关键词公司
  • 网站空间在哪买关键词优化报价推荐
  • 怎么分析网站建设的优缺点seo是什么意思的缩写
  • 免费网站域名使用推广普通话奋进新征程手抄报
  • 西安城乡建设网站新闻热点事件2021(最新)
  • 陕西网站建设电话长沙网络营销顾问
  • 吸引企业做网站的文章内容seo百度关键词优化软件
  • 电子商务网站建设需要知识网站建设费用都选网络
  • 网站建设系统平台网站推广软件下载安装免费
  • 如何给自己做网站班级优化大师官网
  • 电子商务网站的建设费用案例十大网站平台
  • 数据处理网站开发网站推广平台
  • 石家庄现在有疫情吗常用seo站长工具