mysql支持的时区列表_mysql按天分组支持时区

时区问题总是个比较麻烦的问题,客户端与服务器的时区不一致自然是理所当然的事情,而对于多台服务器或者分布式再或者炙手可热的云,时区不统一也很正常,而且也不需要统一,还好有个时间戳的概念,通过时间戳就可以保证交互的过程中始终讨论的是同一个时间

时区问题总是个比较麻烦的问题,客户端与服务器的时区不一致自然是理所当然的事情,而对于多台服务器或者分布式再或者炙手可热的云,时区不统一也很正常,而且也不需要统一,还好有个时间戳的概念,通过时间戳就可以保证交互的过程中始终讨论的是同一个时间。

但是有些时候时间戳并不能满足要求,比如对于一个按天统计的报表,日期范围的选择来自于客户端,通过时间戳我们可以保证服务端返回的数据是属于客户端选择的日期范围中的,但是按天做统计就出现问题了。

服务器端是以mysql作为数据库,其中一张表名为session,其中记录时间戳的字段为ts,在做按日期分组查询时,主要的依据就是ts。

通过很简单的分组GROUP BY date(from_unixtime(ts))就可以统计到每天的记录数。

而这里from_unixtime得到的日期对象是以格林尼治时间为准的,也就是时区为+00:00

例如客户端需要展现2011年1月1日零时至2011年1月10日零时(不包含)的按天统计报表,客户端时区为+08:00,服务器处理此请求时,查询的结果可能会多出2011-01-10这个分组,原因是此时的分组时区不是客户端所期望的。

mysql提供了时区转换的函数CONVERT_TZ,通过它将from_unixtime得到的日期转换为客户端指定的时区就可以解决上面的问题了。

下面通过对比可以看出,统计出的结果是有很大区别的,而后者才是正确的。

SELECT from_unixtime(ts), count(*) AS num FROM session GROUP BY date(from_unixtime(ts))

2011-11-25 06:01:35 2011-11-25 14:01:35 105

2011-11-26 01:42:27 2011-11-26 09:42:27 28

2011-11-27 00:12:32 2011-11-27 08:12:32 39

2011-11-28 00:43:40 2011-11-28 08:43:40 70

SELECT from_unixtime(ts), count(*) AS num FROM session GROUP BY date(CONVERT_TZ(from_unixtime(ts),’+00:00′,’+08:00′))

2011-11-25 06:01:35 2011-11-25 14:01:35 95

2011-11-25 16:54:23 2011-11-26 00:54:23 22

2011-11-26 16:26:29 2011-11-27 00:26:29 33

2011-11-27 16:50:08 2011-11-28 00:50:08 92

对于extjs而言,客户端的时区信息可以这样获取:

Ext.Date.getGMTOffset(new Date());

返回’+0800′,使用时需要处理一下。

对于纯js:

new Date().getTimezoneOffset()/60;

返回-8,为什么呢?有空去查一下看看。

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

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

相关文章

IOS多线程之Block编程

1 什么是block iOS SDK 4.0開始,Apple引入了block这一特性。字面上说,block就是一个代码块。可是它的奇妙之处在于在内联(inline)运行的时候(这和C非常像)还能够传递參数。同一时候block本身也能够被作为參数在方法和函数间传递。这就给予了block无限的可…

python查找两个数组中相同的元素_匹配两个numpy数组以找到相同的元素

使用熊猫:import pandas as pdid1 pd.read_csv(id1.txt)id2 pd.read_csv(id2.txt)df id1.merge(id2.sort_values(byID2).drop_duplicates(ID2).rename(columns{ID2:ID1}))print(df)产生:^{pr2}$对于大型数据集,您可能需要执行以下操作&…

Spring3系列7- 自动扫描组件或Bean

原文地址 http://www.cnblogs.com/leiOOlei/p/3547589.html 一、 Spring Auto Scanning Components —— 自动扫描组件     1. Declares Components Manually——手动配置component 2. Auto Components Scanning——自动扫描组件 3…

数据插不进mysql_数据插入不进数据库里面去。

1&#xff1a;index.php提交到&#xff1a;index_ok.php2:连接数据库文件&#xff1a;conn.php<?php $idmysql_connect("localhost","root","root")ordie(连接失败:.mysql_error());if(mysql_select_db("db_databas...1&#xff1a;ind…

Android_Kotlin 代码学习

https://github.com/ldm520/Android_Kotlin_Demo转载于:https://www.cnblogs.com/simadi/p/6704864.html

liberty配置mysql数据源_Bluemix Liberty server.xml MySQL数据源配置

如果要连接到mysql数据库并希望 manually 在server.xml中提供凭据&#xff0c;则可以执行以下操作&#xff1a;server.xml中&#xff1a;URL"jdbc:mysql://1.2.3.4:3306/db"password"mypassword" user"admin" />name"MySQL Connector&qu…

CI Weekly #17 | flow.ci 支持 Java 构建以及 Docker/DevOps 实践分享

这周一&#xff0c;我们迫不及待写下了最新的 changelog —— 项目语言新增「Java」。创建 Java 项目工作流和其它语言项目配置很相似&#xff0c;flow.ci 提供了默认的 Java 项目构建流程模版&#xff0c;快去试试吧&#xff5e; 最近 flow.ci 2017 招聘计划正式启动&#xff…

mysql mgr 配置_MySQL5.7 MGR安装配置

MySQL5.7 MGR安装配置一、服务器规划mysql_mgr_01192.168.10.223mysql_mgr_02192.168.10.224mysql_mgr_03192.168.10.225二、配置文件1. mysql_mgr_01[rootmysql_mgr_01 tmp]# cat /etc/my.cnf[mysqld]sql_mode STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_D…

你让我怎么说

小组长分配任务,优化首页列表加载响应时间, 涉及更改一同事代码,遇到某个模型命名不解,UserInfoId和CurrentUserInfoId,问这两个干啥使, 答曰UserInfoId是用户的Id,CurrentUserInfoId不知道谁加的, 不解,问道"你写的方法你不知道?", 答曰,不知.后发现是另外一同事共…

python选取tensor某一维_Pytorch的Tensor操作(1)

类型推断torch.randn()&#xff1a;随机初始化a.type()&#xff1a;返回类型type()&#xff1a;返回基本类型isinstance() &#xff1a;检查类型cuda会影响数据类型标量维度(dimention)为0的标量标量的shape&#xff1a;返回类型为【】(空的list)&#xff0c;返回长度也为0a.di…

201521123014 《Java程序设计》第8周学习总结

201521123014 《Java程序设计》第8周学习总结 1. 本周学习总结 1.1 以你喜欢的方式&#xff08;思维导图或其他&#xff09;归纳总结集合与泛型相关内容。 泛型&#xff08;编写的代码可被不同类型的对象所重用&#xff09; Java中一个集合可以放任何类型的对象&#xff0c;因为…

java remove all_如何使用Java List等集合类的removeAll方法

展开全部List等集合类的removeAll方法&#xff0c;API文档描述如下e69da5e6ba9062616964757a686964616f31333361303062&#xff1a;boolean removeAll(Collection> c)从列表中移除指定 collection 中包含的其所有元素(可选操作)。用法案例如下&#xff1a;List list1 new A…

【4.0】jdbcTemplate

1.什么是jdbcTemplate? 2.使用jdbcTemplate 3.crud操作 参考博文&#xff1a;http://blog.csdn.net/u014800380/article/details/64125653 4.采用配置文件的方式使用jdbcTemplate 参考博文&#xff1a;http://suyanzhu.blog.51cto.com/8050189/1563219/ 参考博文原文&#x…

java 默认排序方式_Java Collections.sort()实现List排序的默认方法和自定义方法

1.java提供的默认list排序方法主要代码&#xff1a;list list new arraylist();list.add("刘媛媛");list.add("王硕");list.add("李明");list.add("刘迪");list.add("刘布");//升序collections.sort(list,collator.getinst…

java random算法_负载均衡--随机算法(Random)

随机算法是指&#xff1a;从服务器列表中&#xff0c;随机选取一台服务器进行访问。由概率论可以得知&#xff0c;随着客户端调用服务端的次数增多&#xff0c;其实际效果趋近于平均分配请求到服务端的每一台服务器&#xff0c;也就是达到轮询的效果。一、算法描述假设有 N 台服…

Mysql group by 问题

根据标准sql规定&#xff0c;select字段&#xff08;除聚合函数与&#xff09;必须跟在group by后&#xff0c;但mysql除外&#xff0c;即select * from table a group by a.property 无报错 聚合函数如下&#xff1a; 1. avg() 取其平均数 2.count() 取其数量,返回值为int 3.…

java io体系_java IO流的体系结构图

常用字节流字符流字节流 InputStream 字符流 ReaderFileInputStream BufferedReaderFilte…

jetty java 禁用目录列表_java – 如何禁用Jetty的WebAppContext目录列表?

我将Jetty(版本7.4.5.v20110725)嵌入到java应用程序中。我使用Jetty的WebAppContext在./webapps/jsp/中提供JSP页面&#xff0c;但是如果我访问localhost&#xff1a;8080 / jsp /我获取了Jetty的目录列表&#xff0c;以获取./webapps/jsp/的所有内容。我已经尝试将dirAllowed参…

Arch Linux 安装总结

这篇随笔的目的&#xff1a; 这篇是我今天重新安装后&#xff0c;觉得每次都看别人的来复制&#xff0c;太麻烦了&#xff0c;每次自己解决的一些问题&#xff0c;又不能及时记录下来&#xff0c;导致每次都又需要一通乱找&#xff0c;肯定比第一次开始搜索的要快&#xff0c;但…

java空心正方形代码_从Java中的用户输入绘制空心星号正方形/矩...

我正在尝试创建一个程序,要求用户提供正方形/矩形的宽度和长度尺寸,然后使用#符号将其绘制出来.我几乎了解了,除了我似乎不太了解矩形的右边以正确打印出来…这是我的代码&#xff1a;import java.util.Scanner;public class warmup3{public static void main(String[] args){i…