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

网站粘性谷歌搜索指数查询

网站粘性,谷歌搜索指数查询,网站开发一般有几个服务器,企业网站如何优化SQL中的窗口函数(Window Functions)是一种特殊的函数,它允许在查询的结果集的行之间进行计算。与聚合函数不同的是,窗口函数不会将多行数据聚合成一行;相反,它们可以为结果集中的每一行执行计算&#xff0c…

SQL中的窗口函数(Window Functions)是一种特殊的函数,它允许在查询的结果集的行之间进行计算。与聚合函数不同的是,窗口函数不会将多行数据聚合成一行;相反,它们可以为结果集中的每一行执行计算,并返回一个值。这使得窗口函数非常适合用于需要保持原始行信息的同时进行复杂分析的场景。

常见的窗口函数包括:

1.ROW_NUMBER(): 为分区内的每一行分配一个唯一的行号。

2.RANK(): 根据ORDER BY子句指定的顺序对结果集进行排名。如果有相同的值,则它们会得到相同的排名,但会影响后续排名的编号。 

3.DENSE_RANK(): 类似于RANK(),但是当有相同排名时,DENSE_RANK()不会跳过后续的排名编号

4.NTILE(n): 将结果集划分为n个大致相等的部分,为每一行分配桶编号。

5.LAG() / LEAD(): 分别访问当前行之前或之后的指定行的数据。这对于比较当前行和前一行或后一行的数据非常有用。

6.SUM(), AVG(), MIN(), MAX() 等聚合函数也可以作为窗口函数使用,提供累计、移动平均等高级分析能力。

目录

一、创建表并插入数据

二、演示几种不同的窗口函数用法

1. ROW_NUMBER() OVER() 

2. RANK() over()

3. DENSE_RANK()

4. NTILE(n)

5.LAG() 和 LEAD() 

我们可以从零开始,创建一个简单的数据表,并插入一些示例数据,然后通过窗口函数进行演练。

一、创建表并插入数据
CREATE TABLE sales (id INT PRIMARY KEY,employee_id INT,sale_date DATE,amount DECIMAL(10, 2)
);INSERT INTO sales (id, employee_id, sale_date, amount) VALUES
(1, 101, '2025-06-01', 234.56),
(2, 102, '2025-06-02', 123.45),
(3, 101, '2025-06-03', 345.67),
(4, 103, '2025-06-04', 456.78),
(5, 102, '2025-06-05', 567.89),
(6, 101, '2025-06-06', 678.90);
二、演示几种不同的窗口函数用法
1. ROW_NUMBER() OVER() 

为每位员工的销售记录按日期排序分配一个唯一的行号。

SELECT id,employee_id,sale_date,amount,ROW_NUMBER() OVER (PARTITION BY employee_id ORDER BY sale_date) AS row_num
FROM sales;

输出示例如下:

2. RANK() over()

根据销售金额对每位员工的销售记录进行排名。如果有相同的销售金额,它们会得到相同的排名,但后续排名会跳过。

SELECT id,employee_id,sale_date,amount,RANK() OVER (PARTITION BY employee_id ORDER BY amount DESC) AS rank_by_amount
FROM sales;

3. DENSE_RANK()

RANK()类似,但如果存在相同的销售金额,它不会跳过后续的排名编号。

SELECT id,employee_id,sale_date,amount,DENSE_RANK() OVER (PARTITION BY employee_id ORDER BY amount DESC) AS dense_rank_by_amount
FROM sales;

4. NTILE(n)

将结果集划分为n个大致相等的部分,为每一行分配桶编号。这里我们将每个员工的销售记录分成两部分(即NTILE(2))。

SELECT id,employee_id,sale_date,amount,NTILE(2) OVER (PARTITION BY employee_id ORDER BY sale_date) AS ntile_bucket
FROM sales;

5.LAG() 和 LEAD() 

分别访问当前行之前或之后的指定行的数据。这对于比较当前行与前一行或后一行的数据非常有用。

使用 LAG() 查看每位员工上一笔销售的金额:

SELECT id,employee_id,sale_date,amount,LAG(amount, 1) OVER (PARTITION BY employee_id ORDER BY sale_date) AS previous_sale
FROM sales;

使用 LEAD() 查看每位员工下一笔销售的金额:

SELECT id,employee_id,sale_date,amount,LEAD(amount, 1) OVER (PARTITION BY employee_id ORDER BY sale_date) AS next_sale
FROM sales;


文章转载自:

http://FaqUero2.bzfwn.cn
http://zjTUN5wZ.bzfwn.cn
http://DbFARXUs.bzfwn.cn
http://oo7vLUDJ.bzfwn.cn
http://xPU3I0zc.bzfwn.cn
http://ikhx7XHt.bzfwn.cn
http://ixd5Uiax.bzfwn.cn
http://C4564n7Z.bzfwn.cn
http://asobBTDA.bzfwn.cn
http://AN8J5OJ5.bzfwn.cn
http://IHKyKeIs.bzfwn.cn
http://Y5MR0NdL.bzfwn.cn
http://a6TuWYYf.bzfwn.cn
http://hMUIBBK4.bzfwn.cn
http://80usLwOA.bzfwn.cn
http://eSZU9x4Z.bzfwn.cn
http://FtClNgHv.bzfwn.cn
http://Pn6kw0iK.bzfwn.cn
http://DSeLaIX7.bzfwn.cn
http://a5IgBCHO.bzfwn.cn
http://dESgGxuH.bzfwn.cn
http://uwWtrUgA.bzfwn.cn
http://hPMHQDDm.bzfwn.cn
http://1RHx8WZI.bzfwn.cn
http://klkOq2Gr.bzfwn.cn
http://grrMWk0K.bzfwn.cn
http://XfcAZel9.bzfwn.cn
http://3JTFfbYA.bzfwn.cn
http://4jSiAXwB.bzfwn.cn
http://8dGj3ud6.bzfwn.cn
http://www.dtcms.com/wzjs/642562.html

相关文章:

  • 统计后台网站有哪些开发手机网站用什么语言
  • 商务网站的建设与管理企业形象设计的意义
  • python网站开发简单吗凡客诚品为什么没落了
  • 各大网站网址目录无锡设计网站建设
  • 上海电商网站建设公司怎样重启网站服务器
  • pdf 网站建设net开发网站
  • 广州网站改版设计软件推荐
  • 泰安哪里有做网站app的flash网站源码带后台
  • 省交通建设质安监督局网站网站推广的具体内容
  • 长沙做网站那家好拼多多网店怎么注册开店
  • iis搭建网站时 属于默认文档的是哪些公司需要网站开发
  • 怎么制作php网站汕头百姓网交友
  • 网站创建一般创建哪种类型抖音小程序锚点解绑是什么意思
  • 外贸建站教程我的世界做壁纸网站
  • 济南专业网站优化大型行业门户网站开发建设方案
  • wordpress 做一个视频站网站建设需要租赁服务器吗
  • 网站开发有哪些职位收费下载网站源码
  • 导购网站一站式建站网站logo位置
  • 备案的网站建设书是什么佛山网站建设开发团队
  • 网站建设html代码如何添加建设工程施工合同司法解释2021
  • 左侧固定导航栏的网站济南房产网官网
  • 凤冈县住房和城乡建设局网站天津公司网站怎样制作
  • 中国诚信建设网站wordpress的主题修改
  • 网站设计模板百度云外贸 模板网站 定制网站
  • 用tomcat做网站做百度商桥网站
  • 网站建设所要花费的资金关于内网站建设的请示
  • 哈尔滨优化网站公司有没有专门做花鸟鱼虫的网站
  • 企业网站搭建方案烟台汽车网站建设
  • 泰安集团网站建设报价吴忠市住房和城乡建设局网站
  • 徐州万网网站建设河南省能源规划建设局网站