草庐IT

Timestamp

全部标签

MySQL删除 'expiry'之后的行

我正在尝试删除MySQL数据库中的过期条目,在创建或更新名为lastBeat的字段时使用CURRENT_TIME更新,我使用以下查询来检查/删除超过20秒的行:DELETE*FROM`rmachines`WHERE`lastBeat`我也试过使用CURRENT_TIME而不是NOW()主要有两个循环:每秒更新rmachines中的一行执行删除查询如果2被快速执行,随着时间滚动到下一分钟(即59-60秒),它会删除该行,就好像它已经过期一样(甚至认为它肯定没有!),否则它表现良好。如果2每秒执行一次,这不是很明显,“错误过期”很少发生,但我每秒运行5次以暴露“问题”。我找到了一个解决方案

mysql - 将 CURDATE() 的日期值与完整时间戳字段进行比较

我有一个将时间戳值(YYYY-MM-DDHH:MM:SS)放入表META的META_VALUE列的函数。我想做的是比较META_VALUE的日期部分(YYYY-MM-DD)是否等于今天(CURDATE()),忽略小时、分钟和秒(小时:MM:SS)。我怎样才能做到这一点? 最佳答案 SELECT*FROMtableWHEREBETWEEN'YYYY-MM-DD00:00:00'AND'YYYY-MM-DD23:59:59'尽可能避免在现场进行计算:例如SELECT*FROMtableWHEREDATE()='YYYY-MM-DD'将为

php 时间戳 utc

我有一个PHPMySQL查询,它将一些数据插入MySQL数据库,它包括一个时间戳。目前INSERT查询使用NOW()作为时间戳列,它以以下格式保存在数据库中:2012-07-2413:13:02不幸的是,服务器不在我的时区内,它被列为America/Los_Angeles,如图所示printdate_default_timezone_get();我希望做到以下几点:date_default_timezone_set('Europe/London');$timefordbLondonEU=date('Y-m-dH:i:s',time());并简单地将$timefordbLondonEU代

mysql - 从 unix 时间转换的问题

在尝试处理MySQL中的unix时间戳时,我发现了一些奇怪的事情。我注意到在转换为任意日期的unix时间戳时,'00:59:59'和'01:00:00'之间的时间超过1秒。再深入一点,我有以下示例查询,结果我不明白:SELECTFROM_UNIXTIME(1382835600)ASa,FROM_UNIXTIME(1382832000)ASb;+---------------------+---------------------+|a|b|+---------------------+---------------------+|2013-10-2701:00:00|2013-10-2

PHP 获取 00 :00:00 of a unix timestamp

如果我得到一个unix时间,例如1407050129如何在unixtimestamp中获取该unix日的12:00AM,表示该unix时间当天的第一分钟。如果我想在第一分钟得到今天的例子$today_first_min=strtotime("00:00:00"); 最佳答案 试试这个:$that_day="1407050129";$that_day_first_min=strtotime(date('Y-m-d',$that_day).'midnight');Seedemo 关于PHP获

php - 如何在 session 过期后自动更新数据库而不刷新我的页面

此代码需要刷新或单击页面才能转到索引页面,并且在session过期后更新数据库。我怎样才能自动让它在session过期后更新数据库,这样用户事件将为0而无需刷新或单击页面?$idletime=3600;//after1hrtheusergetsloggedoutif(time()-$_SESSION['timestamp']>=$idletime){$online="UPDATEusersSETactive=0WHEREusername='".$_SESSION['username']."'";mysqli_query($con,$online);session_destroy();h

mysql - 优化包含左连接的 sql 查询

我有1个名为errors的表,它具有以下结构:错误|id|UserID|CrashDump|ErrorCode|Timestamp|1|user1|Crash1|100|2015-04-0821:00:00|2|user2|Crash2|102|2015-04-1022:00:00|3|user3|Crash4|105|2015-05-0812:00:00|4|user4|Crash4|105|2015-06-0221:22:00|5|user4|Crash4|105|2015-06-0304:16:00我想获得包含以下数据的结果集:期望的结果集CrashDump|ErrorCount

java - 由 : java. time.DateTimeException 引起:发现冲突:字段 DayOfWeek 6 不同于从 2016-01-30 派生的 DayOfWeek 2

我正在像这样解析日期:"Sat,30Jan201600:03:00+0300"但在某些日期它抛出这个异常:Causedby:java.time.DateTimeException:Conflictfound:FieldDayOfWeek6differsfromDayOfWeek2derivedfrom2016-01-30或者这个:java.time.format.DateTimeParseException:Text'Tue,30Jan201600:06:00+0300'couldnotbeparsed:Conflictfound:FieldDayOfWeek6differsfromD

java - 如何比较 java.sql.Timestamp 和 java.util.Date

我知道javaDate的设计很糟糕,但直到今天我才知道是怎么回事。我将一个日期保存到数据库中,当我从数据库中获取它并与原始日期进行比较时,它告诉我它是不同的!我写了一个看起来很奇怪但通过了的测试!@Testpublicvoiddate_equals(){Datenow=newDate();Timestamptimestamp=newTimestamp(now.getTime());assertFalse(timestamp.equals(now));assertTrue(now.equals(timestamp));assertTrue(timestamp.compareTo(now)

mysql - SQL根据时间戳差异查询数据

我有一个与sql数据库相关的问题。即我想创建一个查询来获取某个测量列的平均值,但仅限于时间差小于60秒的那些后续行。示例表如下所示:|ID|Measurement|Timestamp||1|0.564|1535648400||2|0.456|1535648459||3|0.785|1535648501||4|0.321|1535648620|时间戳之间的差异对于所有行都是可以的,除了第3行和第4行,它们之间的差异超过60秒。在这种情况下,平均值不会取ID为4的行,而只会取前3行。我主要计划为InfluxDB数据库编写此查询,但通常也可以为结构化SQL编写查询。