小言_互联网的博客

sqlserver-累和

328人阅读  评论(0)

1.练习题

2.数据集



USE master
GO

IF EXISTS(SELECT * FROM sysdatabases WHERE name='LeetCode')
	DROP DATABASE LeetCode
GO
CREATE DATABASE LeetCode
GO
USE LeetCode
GO

IF EXISTS(SELECT * FROM sysobjects WHERE name='Activity')
	DROP TABLE Activity
GO
CREATE TABLE Activity
(
	player_id INT,
	device_id INT,
	event_date DATE,
	games_played INT,
	CONSTRAINT PK_player PRIMARY KEY(player_id, event_date)
)
INSERT INTO Activity
VALUES
	(1, 2, '2016-03-01', 5), (1, 2, '2016-05-02', 6), (1, 3, '2017-06-25', 1),
	(3, 1, '2016-03-02', 0), (3, 4, '2018-07-03', 5)
GO

SELECT *
FROM Activity
GO

3.解

-- 只保留当日第一次登陆时间
SELECT player_id, 
	event_date, 
	--COUNT(event_date) OVER(PARTITION BY player_id ORDER BY event_date),
	SUM(games_played) OVER(PARTITION BY player_id ORDER BY event_date)
FROM Activity
ORDER BY player_id ASC


转载:https://blog.csdn.net/weixin_43650411/article/details/102008914
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场