1. 程式人生 > >MYSQL 兩個datetime型別相減

MYSQL 兩個datetime型別相減

原始資料表資料:


select (atime - btime) sec  from 資料表;

相減得到的並不是秒,特別需要注意!

結果:




mysql中計算兩個Datetime型別的時間間隔(單位為秒),需要轉換:
1.跨天,月,年都無問題
select (UNIX_TIMESTAMP(atime) - UNIX_TIMESTAMP(btime)) sec

from 資料表;




2.只能用在Time型別,跨天,月,年都有問題
select (TIME_TO_SEC(atime) - TIME_TO_SEC(btime)) sec

from 資料表;

select (TIME_TO_SEC(end_time) -TIME_TO_SEC(start_time)) sec from task_detail  where end_time is not null;

結果同上圖所示;

修改資料:

update task_detail set end_time = now() where id = 8;

查詢結果為負值,具體見截圖:


故在做兩個日期相減的時候,採用(TIME_TO_SEC(atime) - TIME_TO_SEC(btime)) sec 方式比較好。

相關推薦

MYSQL datetime型別

原始資料表資料: select (atime - btime) sec  from 資料表; 相減得到的並不是秒,特別需要注意! 結果: mysql中計算兩個Datetime型別的時間間隔(單位為秒),需要轉換:1.跨天,月,年都無問題select (UNIX_TIM

MYSQL datetime型別

原始資料表資料: select (atime - btime) sec  from 資料表; 相減得到的並不是秒,特別需要注意! 結果: mysql中計算兩個Datetime型別的時間間隔(單位為秒),需要轉換:1.跨天,月,年都無問題select (UN

Python3時間list中,list對應

>>> from dateutil.parser import parse >>> from datetime import datetime >>> """ ... 求兩個時間差 ... time2 - time1 .

日期時間怎麼處理

public class Test { public Test() { } public long fromDateStringToLong(String inVal) { //此方法計算時間毫秒 Date date = null; //定

js中將日期字串 獲得天數

function dateDiff(date1, date2) {             var type1 = typeof date1, type2 = typeof date2;             if (type1 == 'string')        

TDateTime型別的資料

程式中用到兩個時間資料相減得到有效時長的功能,在網上查詢後得到如下結論: 1.首先將兩個時間字串轉換為TDateTime型別,這裡可以使用encodedate()和encodetime()函式。 2.得到的兩個資料相減後是double型別的資料,而且表示的是

java Double型別的數值之間的加操作

DoubleUtils import java.math.BigDecimal; public class DoubleUtil { /** * double 相加 * @param d1 * @param d2

long型別的數值除問題

問題描述:兩個long型別的數值相除,結果會自動取整。當兩個數相除結果是零點幾的時候,如何避免結果自動取整為0 解決: 在做除的操作時,被除數先乘以1.0再去除以除數,這樣得到的結果就是小數而不會取整

category方法同調用哪個

似的 ~~ data- category 擴展 自動 很難 imageview 成員 Category擴展,它是對一個類進行功能的擴展。在項目的開發過程中,在不斷的叠代開發過程中,我們的類也不可避免的要根據需求來增加新的功能,而這個時候很多的人可能會新建一個子類,然後在子

C#.NET常見問題(FAQ)-如何判斷類是否同類型

cnblogs 空間 ont -s 交流 在線 下載 c# 教學視頻 可以用is方法判斷是否是一個類 ?更多教學視頻和資料下載,歡迎關註以下信息: 我的優酷空間: http://i.youku.com/acetaohai123 ?我的在線

MySQL 死鎖樣例

creat 一個 table 更新 mysql font mysq 新人 span 【引子】   從事MySQL-DBA這一樣也有些年頭了,想對新人說,在分析死鎖問題時應該還要考慮到有一個叫請求隊列的“概念”。之所以   在這裏提這個不是因為新手不知道,而是有時候會自然而然

【java】判斷引用型別的變數是否指向同一地址

  問題:有兩個物件obj1和obj2,都是MyObject類的例項。如何比較這兩個物件是否指向相同的記憶體地址? 分情況討論: 1、如果 MyObject類的equals方法和hashcode方法被重寫:  如果obj1 == obj2 為真,則兩者指向相同的

opencv 幅影象直接

關鍵函式cvAbsDiff() ,程式碼如下: #include "cv.h" #include "highgui.h" #include "cxcore.h" int main(int argc,char** argv) {cvNamedWindow("a",0);  

獲取Date型別的天數差,時差,分差

public static int getDateInterValDay(Date begin,Date end){ return (int) ((end.getTime() - begin.getTime()) / (24 * 60 * 60 * 1000));}public static int g

遊戲背景音樂的特殊型別

遊戲背景音樂可以讓玩家的情緒迅速被帶入,這樣更加能感受到遊戲體驗感和融入感。而針對不同遊戲所創作的遊戲音樂,就和電影主題曲一樣,讓人印象深刻。        其實交響樂是源於希臘語,原意為“一起響”的意思。交響樂是一種具有奏鳴曲體裁特點,由龐大的管絃樂隊演奏的

Java中byte型別相加結果賦值給byte型別的變數會報編譯錯誤,byte加byte的結果為什麼是int?

背景: 之前偶然看到有討論這個問題,在網上搜了半天,結果都不盡如人意,解釋沒有到位, 有的說byte加byte預設就是int,那為什麼這麼做呢? 這不是找麻煩麼?這種奇怪的預設還有哪些?帶來一些列疑問。。。。。。 有的說byte儲存的就是整型資料,這種說法的對錯姑且不論,至少我覺得難免有

計算DateTime間的時間差(小時差、�586鐘差、秒鐘差等)

private static int dateDiff(DateTime dtStart, DateTime dtEnd) { TimeSpan tsStart = new TimeSpan(dtStart.Ticks); Ti

java中比較double型別值的大小

非整型數,運算由於精度問題,可能會有誤差,建議使用BigDecimal型別,具體 BigDecimal的詳細說明參考jdk開發幫助文件。 import java.math.BigDecimal; public class DoubleCompare { public String co

DateTime之間的時間差

class Util { public static double dateDiff(DateTime DateTime1, DateTime DateTime2) { double totalSeconds = 0.0;

Mysql 欄位合成一個欄位顯示

在工作中,有時會產生需要合併兩個欄位的情況使用下面都可以: CONCAT(str1,str2,...) CONCAT_WS(separator,str1,str2,...) 1、CONCAT(str1,str2,...) SELECT floorNo,unit,CON