mysql日期纬度表_mysql中生成时间维度表

mysql中生成时间维度表

利用mysql常用日期函数生成时间维度表,效率最高,最简单,无需其他的一些工具支持。生成结果示例如下图:

1ba3fc076da21ae591163302a48c23b4.png

# time span

SET @d0 = "2012-01-01";

SET @d1 = "2012-12-31";

SET @date = date_sub(@d0, interval 1 day);

# set up the time dimension table

DROP TABLE IF EXISTS time_dimension;

CREATE TABLE `time_dimension` (

`date` date DEFAULT NULL,

`id` int NOT NULL,

`y` smallint DEFAULT NULL,

`m` smallint DEFAULT NULL,

`d` smallint DEFAULT NULL,

`yw` smallint DEFAULT NULL,

`w` smallint DEFAULT NULL,

`q` smallint DEFAULT NULL,

`wd` smallint DEFAULT NULL,

`m_name` char(10) DEFAULT NULL,

`wd_name` char(10) DEFAULT NULL,

PRIMARY KEY (`id`)

);

# populate the table with dates

INSERT INTO time_dimension

SELECT @date := date_add(@date, interval 1 day) as date,

# integer ID that allowsimmediate understanding

date_format(@date, "%Y%m%d")as id,

year(@date) as y,

month(@date) as m,

day(@date) as d,

date_format(@date, "%x")as yw,

week(@date, 3) as w,

quarter(@date) as q,

weekday(@date)+1 as wd,

monthname(@date) as m_name,

dayname(@date) as wd_name

FROM T

WHERE date_add(@date, interval 1 day) <= @d1

ORDER BY date

;

神秘的表T,仅仅需要有多于你需要生成日期的记录数即可。思路是从T表选择多行数据,同时生成对应的日期字段。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/503381.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java程序员高效开发必备工具,其中有你的最爱吗?

对于Java编程开发&#xff0c;有两种不同的观点&#xff1a;一种认为Java是最简单功能最强大的编程语言之一&#xff0c;另一种则表示这种编程语言既难用又复杂。&#xff0c;每个工具都有其优点&#xff0c;学习这些具有可以帮助开发者改善代码质量&#xff0c;从而成为一个更…

mysql怎么实现生日字段前一个小时提醒_MySql学习笔记(二) 索引的设计和使用...

作为开发人员&#xff0c;数据库的索引是我们再熟悉不过的了。那么实话真的会了吗&#xff0c;在项目开发中随便定义一个int、varchar后边跟个primary key或者加个index就好了么&#xff1f;考虑到这些咋还真的需要看看专业的人都是怎么做的。在mysql中索引是提升性能的常用工具…

Java程序员需要掌握哪些技能才能通过大公司的面试

首先我们来谈一下程序员的阶段&#xff0c;在学校里的三年对于程序员来说是第一个门槛&#xff0c;这个阶段将会淘汰掉一批不适合写代码的人。这一阶段&#xff0c;我们走出校园&#xff0c;迈入社会&#xff0c;成为一名程序员&#xff0c;正式从书本上的内容迈向真正的企业级…

python中计算整商的运算符_Python 运算符中用来计算整商的是( ). (2.0分)_学小易找答案...

【判断题】函数的名称可以随意命名。( ) (2.0分)【判断题】python中的代码块使用缩进来表示。 (2.0分)【单选题】下列选择中,符合python命名规范的标识符是( )。 (2.0分)【单选题】下列表达式中,返回值是True的是( )。 (2.0分)【判断题】函数定义完成后,系统会自动执行其内部的…

java编程有什么独特之处?

Java编程已经成为了一个坚实的平台&#xff0c;可以赶上甚至超过本地代码的水准。它能使开发者花最小的代价完成工作&#xff0c;同时还能使得开发者在一段时间之后&#xff0c;还能继续完成别人的代码并且明白其中的意思。当然&#xff0c;你也可以编写可读性差的代码&#xf…

初学Java学员,千万不要踩这几个坑

2019即将到来&#xff0c;我们的编程界的大佬不由得发表一波感慨&#xff0c;新的一年将会有哪些语言上榜&#xff0c;不过小编还是相信Java不会落榜的。今天我们来谈一下那写年学习Java踩的坑。 一、敲代码追求速度&#xff0c;没有正确率 相信看过很多大神打代码速度非常快…

peewee mysql自动断开_flask+mako+peewee(下)(解决了Error 2006: MySQL server has gone away)

这篇主要介绍在这次项目中使用的peewee首先我们要初始化一个数据库连接对象。这里我使用了peewee提供的链接池。当然你也可以直接指定连接例如&#xff1a;db SqliteDatabase(base.db)我这里使用了peewee扩展pool&#xff0c;并初始化db对象参数。from playhouse importpooldb…

JAVA程序员已成为最疯狂的加班行业,没有之一?

程序员界加班经常成为业界讨论的话题&#xff0c;夜幕降临&#xff0c;大楼里依然灯火通明时&#xff0c;那一刻&#xff0c;仿佛让我渐渐的忘记了时间&#xff0c;我知道我不是一个在加班&#xff0c;我不是一个人&#xff01;连续加班已成为常事&#xff0c;一点不夸张。 “…

layui table reload post请求_如何实现在Layui框架中完成父窗口刷新(更新)

最近有个项目使用Layui框架进行后端系统的界面搭建&#xff0c;其中Layui框架中的Layer组件在项目中会用得非常多。且有些功能会遇到子窗口完成数据的提交后&#xff0c;进行关闭同时会刷新父窗口的数据&#xff0c;所以此文章分享一下《如何实现在Layui框架中完成父窗的刷新功…

Java开发人员需要掌握数据库的知识点有哪些?

现在主流的Java开发人员一般都需要会主流数据库。开发人员需要对Mysql、Oracle、SqlServer这三个常用的熟悉了解。在数据量比较大或者请求数比较高的情况下&#xff0c;需要了解一些特定数据库针对性优化。SQL相关入门熟悉表、字段、记录、索引等概念。 熟悉SQL的约束&#xff…

java jdbc mysql 乱码_【求助】为什么用纯java jdbc插入mysql一直乱码

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼String str "人造革";//gbk编码使用2个字节表示一个汉字,所以buffer的长度应该为6byte[] buffer str.getBytes("gbk");//[-56, -53, -44, -20, -72, -17]System.out.println("gbk编码的byte信息:"…

Java到底能做什么事情呢?

相信很多小伙伴看到标题第一个出现在脑海里的想法是赚钱&#xff0c;难道你们只知道java薪资高&#xff1f;那么你太low,Java的应用领域很广&#xff0c;可以说是现在最普及的&#xff0c;遍布各行各业&#xff0c;可见其优势所在。 1、大数据领域 Hadoop以及其他大数据处理技…

MySQL中怎么优化数据倾斜_Greenplum 调优--数据倾斜排查(一)

对于分布式数据库来说&#xff0c;QUERY的运行效率取决于最慢的那个节点。当数据出现倾斜时&#xff0c;某些节点的运算量可能比其他节点大。除了带来运行慢的问题&#xff0c;还有其他的问题&#xff0c;例如导致OOM&#xff0c;或者DISK FULL等问题。如何监控倾斜1、监控数据…

成为优秀的Java程序员要具备哪些技能?

Java是热门的编程语言&#xff0c;热衷技术&#xff0c;掌握一门语言&#xff0c;我们最重要的是知识的积累和运用&#xff0c;那我们需要掌握哪些技能才能成为优秀的Java程序员呢&#xff1f;小编来为大家解答一波。 1.拥有扎实的基础和深刻理解能力 Java 程序员&#xff0c…

mysql登陆 慢_mysql登陆慢问题解决

mysql登陆慢问题解决现象:系统正常, 本地登陆速度很快. 查询等操作没有问题. 日志无报错信息. 但远程登陆异常缓慢, 甚至需要等20分钟. 登陆后检查mysql> show processlist;存在大量处于login状态的未授权用户进程.解决:在my.cnf文件中加入参数 “skip-name-resolve” , 重新…

Java 平台有哪几个版本?

Java 平台的版本有哪些&#xff1f;我相信只要接触过Java入门的小伙伴都知道&#xff0c;但是问起你具体的细节你不一定能全部答的上来。 一、 Java SE&#xff08;Java Platform&#xff0c;Standard Edition&#xff09; Java SE 以前称为 J2SE。它允许开发和部署在桌面、服务…

java编译源文件_Java实现编译源文件(Java源码)

代码案例&#xff1a;import java.util.ArrayList;import java.util.List;import javax.tools.DiagnosticCollector;import javax.tools.JavaCompiler;import javax.tools.JavaFileObject;import javax.tools.StandardJavaFileManager;import javax.tools.ToolProvider;public …

学习Java能够从事哪些工作?

学习Java编程能够胜任哪些工作&#xff1f;在互联网行业快节奏的发展&#xff0c;根据以往的经验&#xff0c;做一个简要的分析&#xff0c;掌握了Java这门技术&#xff0c;就业面也是很广的&#xff0c;不管是电脑方面的软硬件开发还是手机的软硬件开发Java都是必不可少的技术…

java面试题 sql_Java面试题总结之数据库与SQL语句

1、有3个表,表结构如下&#xff1a;Student学生表(学号&#xff0c;姓名&#xff0c;性别&#xff0c;年龄&#xff0c;组织部门)Course课程表(编号&#xff0c;课程名称)Sc选课表(学号&#xff0c;课程编号&#xff0c;成绩)。1)写一个SQL 语句&#xff0c;查询选修了’计算机…

Java 程序员必须掌握的 Linux 命令

作为一名程序员&#xff0c;小编觉得还是应该懂得linux&#xff0c;不说深入&#xff0c;起码的使用还是要会&#xff0c;能深入当然最好了&#xff0c;平时开发过程中不使用Linux(Unix)或者mac系统&#xff0c;也需要熟练掌握Linux命令。在做完项目上线时候&#xff0c;需要与…