美文网首页
2020-04-09

2020-04-09

作者: DUYAN_bc77 | 来源:发表于2020-04-09 21:38 被阅读0次

连续出现N次

Create table If Not Exists Logs (Id int, Num int)
Truncate table Logs
insert into Logs (Id, Num) values ('1', '1')
insert into Logs (Id, Num) values ('2', '1')
insert into Logs (Id, Num) values ('3', '1')
insert into Logs (Id, Num) values ('4', '2')
insert into Logs (Id, Num) values ('5', '1')
insert into Logs (Id, Num) values ('6', '2')
insert into Logs (Id, Num) values ('7', '2')

编写一个 SQL 查询,查找所有至少连续出现三次的数字

SELECT DISTINCT a.Num ConsecutiveNums FROM 
        (SELECT t.Num ,#t表的Num
       @cnt:=IF(@pre=t.Num, @cnt+1, 1) cnt,
       @pre:=t.Num pre#如果pre与t.num 相等,则cnt加1, 否则cnt重置为1
        FROM Logs t,
                 (SELECT @pre:=null, @cnt:=0) b) a#将生成的num与cnt次数的表,作为新的表 a
  WHERE a.cnt >= 3 

#声明cnt变量--次数统计,pre变量--上次Num的值

Point

用户变量
用户变量,在客户端链接到数据库实例整个过程中用户变量都是有效的

MySQL中用户变量不用事前申明,在用的时候直接用“@变量名”使用就可以了。

select @num:=1; 或 select @num:=字段名 from 表名 where ……,

三元表达式

if(条件,语句一,语句二)

Sql判断查询,类似三元表达式。参数一为条件,条件结果为true执行参数二语句,条件结果为false执行参数三语句。

相关文章

  • 2020-04-10

    2020-04-09 菜菜_d868 字数 349 · 阅读 1 2020-04-09 22:45 2020-04...

  • 2020年书单+剧单

    2020-04-09,《人生的智慧》,叔本华 2020-04-09,《绝对笑喷之弃业医生日志》,亚当·凯 2020...

  • 使用kotlin自定义dialog详解

    ``` /** * author:CQ * Date:2020-04-09 * Description:调拨出入库...

  • 成功路上并不拥挤,因为坚持的人不多NO.145

    2020-04-09 星期四 晴 成功路上并不拥挤,因为坚持的人不多NO.145 成功路上并不拥挤,因为坚持...

  • 晚间日记1

    今天是2020-04-09 起床:07:00 就寝:24:00 天气:超级无敌好天气,晚上还有星星 心情:无敌爆炸...

  • 《高效演讲》3

    Day24 2020-04-09 《陶峻:随时随地高效表达的三大策略》 【字数】 “书中自有黄金屋。”--阅读让我...

  • targetSdkVersion 升级到 28,并迁移到 And

    更新日志 2020-04-09 首次发布 前言 由于目前大部分应用市场要求新上架应用应基于 Android 8.0...

  • Git ! [rejected] master ->

    什么情况 今天(2020-04-09)维护一个iOS项目,增加完需求走完测试流程后准备在gitlab上做个版本,结...

  • hey~你还记得我吗?

    2020-04-09,那天我下定决心开始日更。 2020-05-19,即将坚持日更的第40天,我断更了。 那天,我...

  • 2020-04-09

    写往天堂的信 张永霖 互相关注 字数 806 · 阅读 9 2020-04-09 19:35 在天堂上的老爷爷老奶...

网友评论

      本文标题:2020-04-09

      本文链接:https://www.haomeiwen.com/subject/eqihmhtx.html