首页 > 数据库 >【LeetCode173. 最多连胜的次数】MySQL用户变量编程解法

【LeetCode173. 最多连胜的次数】MySQL用户变量编程解法

时间:2023-08-19 11:12:38浏览次数:69  
标签:连胜 matches LeetCode173 player result MySQL prev id consec

目录

题目地址

https://leetcode.cn/problems/longest-winning-streak/description/

题目描述

选手的 连胜数 是指连续获胜的次数,且没有被平局或输球中断。

编写解决方案来计算每个参赛选手最多的连胜数

结果可以以 任何顺序 返回。

代码

WITH t1  AS (
    SELECT
        #------------只需要修改里面的逻辑就行。注意语句是“顺序执行”的-------------------------------
        match_day,
        player_id,
        (case when result="Win" and @prev_result="Win" AND player_id = @prev_player_id then @consec_matches := @consec_matches + 1
        when result="Win" AND player_id = @prev_player_id then @consec_matches := 1
        when result="Win" then @consec_matches := 1
        else @consec_matches := 0 end) 
        AS consec_matches,

        @prev_date := match_day,
        @prev_player_id := player_id,
        @prev_result:=result
        #-------------只需要修改里面的逻辑就行。注意语句是“顺序执行”的------------------------------
    FROM
        (SELECT @prev_date := NULL, @prev_player_id := NULL, @consec_matches := 1,@prev_result:=NULL ) vars,
        (SELECT match_day, player_id,result FROM Matches ORDER BY player_id , match_day) ordered_dates
)

SELECT player_id,max(consec_matches) as  longest_streak
from t1
group by player_id

标签:连胜,matches,LeetCode173,player,result,MySQL,prev,id,consec
From: https://www.cnblogs.com/yhm138/p/17642179.html

相关文章

  • Java智慧工地系统源码(微服务框架+Java+MySQL)
    智慧工地系统是依托物联网、互联网、AI、可视化建立的大数据管理平台,是一种全新的管理模式,能够实现劳务管理、安全施工、绿色施工的智能化和互联网化。围绕施工现场管理的人、机、料、法、环五大维度,以及施工过程管理的进度、质量、安全三大体系为基础应用,实现全面高效的工程管理需......
  • 【LeetCode1454. 活跃用户】MySQL 用户自定义变量,面向过程编程解决"连续天数"的问题
    目录题目地址题目描述代码题目地址https://leetcode.cn/problems/active-users/description/题目描述活跃用户是指那些至少连续 5天登录账户的用户。编写解决方案, 找到活跃用户的id和name。返回的结果表按照id排序 。代码注意需要处理,同一天多次登录的情形......
  • Linux unixODBC 连接 MySQL数据库
    LinuxunixODBC连接MySQL数据库1.下载unixODBC及MySQLConnector/ODBC1.1unixODBC下载https://www.unixodbc.org/ 1.2MySQLConnector/ODBC下载https://downloads.mysql.com/archives/c-odbc/选择版本选择:5.3.132. 安装驱动安装unixODBCtar-zxvfunix......
  • Mysql数据库
     问题1:如何定位Mysql慢查询?分析:聚合查询、多表查询、表数据量过大、深度分页查询,导致页面加载慢、接口压测响应时间超过1s。答:A使用开源运维工具,比如Arthas、SkyWalking;B使用Mysql自带的慢查询日志,调试阶段使用; 问题2:SQL执行慢,是如何分析优化的呢?聚合查询,加临时表......
  • 构建高性能的后端服务:使用 Java Spring Boot 和 MySQL
    在现代应用开发中,构建高性能的后端服务是至关重要的。本文将介绍如何利用JavaSpringBoot框架和MySQL数据库来构建一个高性能的后端服务,实现数据存储与检索。为什么选择JavaSpringBoot和MySQL?JavaSpringBoot:SpringBoot是一个快速开发框架,可以帮助你迅速构建独立的、......
  • zabbix-agent2监控mysql
    1、安装zabbixagent2到mysql服务器mysql服务器地址为10.0.0.6,安装zabbix_agent2。不同系统的安装方式有略微差别2、在zabbixagent2端修改配置vim/etc/zabbix/zabbix_agent2.confServer=10.0.0.5ServerActive=10.0.0.5Hostname=10.0.0.63、在mysql服务器新建zabbix监控......
  • Linux 下php7.2安装mysql扩展
    环境CPU:x86_64OS:CentOSLinuxrelease7.5php:7.2.34pdo_mysql:7.2.34安装进入安装包mysql扩展目录进入到php安装包(php-7.2.34.tar.gz)的解压目录php-7.2.34中的扩展目录,准备进行编译cd/opt/php-7.2.34/ext/pdo_mysql编译安装mysql扩展这个过程3步执行:--with......
  • mysql中利用sql语句修改字段名称,字段长度等操作--九五小庞
    在网站重构中,通常会进行数据结构的修改,所以添加,删除,增加mysql表的字段是难免的,有时为了方便,还会增加修改表或字段的注释,把同字段属性调整到一块儿。这些操作可以在phpmyadmin或者别的mysql管理工具中完成,但是我们有时为了更方便的管理,会选择写sql语句来实现。1.修改字段的长度语......
  • docker搭建MySQL的主从复制
    用Docker搭建Mysql的主从复制原创 青菜浪人 青菜浪人 2023-07-3015:33 发表于陕西收录于合集#docker11个创建主容器docker run -d -p 3306:3306 --privileged=true -v /mysql/log:/var/log/mysql -v /mysql/data:/var/lib/mysql -v /mysql/conf:/etc/mysql......
  • mysql 如何 在用逗号分隔开的字符串中精确查询出 多个字符串
    例如:在MySQL字段中有值为1,2,3,4,5,6,8,1099,98,91,95,97两条数据而我想查出两个数据1和95如果使用find_in_set查询则无法查询出来  则需要使用mysql内置方法SELECT*FROMpay_configWHERECONCAT(',',product_ids,',')REGEXP',(1|43|15),'concat......