首页 > 数据库 >MySQL生成连续的数

MySQL生成连续的数

时间:2022-11-03 10:59:05浏览次数:58  
标签:MySQL rank 生成 连续 mysql SELECT

背景

  • MySQL版本5.7,需要生成连续的日期,只通过select,而不走自定义函数或存储过程

思路

  • 只需要生成连续的数字,然后通过日期时间函数操作即可

脚本

  SELECT
  	DATE_ADD( "2022-11-02", INTERVAL CAST( @rank := @rank + 1 AS SIGNED ) DAY ) AS `rank` 
  FROM
  	detail p,
  	( SELECT @rank := 0 ) n 
    LIMIT 100;
  • SELECT @rank := 0通过:=赋值变量为0
  • detail是一个业务大表,目的是生成笛卡尔积,并逐条取出,产生迭代效果

小结

  • 核心就是必须通过辅助表产生笛卡尔积,形成迭代自增
  • 缺点是辅助表数据不是无限的,无法通过传入一个数控制迭代次数

参考

标签:MySQL,rank,生成,连续,mysql,SELECT
From: https://www.cnblogs.com/wftop1/p/16853680.html

相关文章

  • MySQL 忘记密码
    关闭正在运行的mysql服务以安全模式启动mysqlmysqld--shared-memory--skip-grant-tables--console使用另一个命令行连接mysql数据库。无需输入密码,直接回车跳过......
  • 元素JS 完成 html 文件的生成 下载
    前端生成html字符串模板,并进行下载通过字符串拼接出完整的html文件使用Blob构造出一个Blob文件对象使用window.URL.createObjectURL将文件对象解析成url将......
  • 查看mysql资源使用情况
    usesysselectevent_name,current_allocfromsys.memory_global_by_current_byteslimit10;selecthost,current_allocatedfrommemory_by_host_by_current_byte......
  • Django --根据已有表生成ORM模型
    在实际开发中,有些时候可能数据库已经存在了。如果我们用Django来开发一个网站,读职的是之前已经存在的数据库中的数据。那么该如何将模型与数据库中的表映射呢?根据旧的数......
  • MySQL如何保证数据一致性
    如何保证一致性数据库通过原子性(A)、隔离性(I)、持久性(D)来保证一致性(C)。其中一致性是目的,原子性、隔离性、持久性是手段。因此数据库必须实现AID三大特性才有可能实现一致性......
  • 【c&c++】[C++]使用Jansson生成与解析json字符串
    安装配置序列化与反序列化生成Json解析JsonJansson是一个用于解码、编码、操控JSON的C库:简单直观的API和数据模型没有依赖项完整的Unicode支持(UTF-8)安装 ......
  • 七牛云API的使用包括Ajax上传功能及凭证生成
    1.服务端(主要用于生成上传,删除,下载等凭证)引入Qiniu的Get包。包就叫Qiniu。//上传凭证//上传凭证:其余凭证类似的写法publicstringUpLoadToken()......
  • mysql 窗口函数
    语法结构窗口函数的语法结构:函数OVER([PARTITIONBY字段名ORDERBY字段名ASC|DESC])函数OVER窗口名…WINDOW窗口名AS([PARTITIONBY字段名ORDERBY字......
  • navicate12 连接MySQL8 报错
      mysql>selectuser,plugin,hostfromuserwhereuser='root';+------+-----------------------+------+|user|plugin|host|+------+------......
  • MySQL进阶篇
    1.存储引擎1.1MySQL体系结构 连接层  最上层是一些客户端和链接服务,包含本地sock通信和大多数基于客户端/服务端工具实现的类似于TCP/IP的通信。主要完成......