select dealuserid,sum(dealdate)/count(dealuserid) as 平均 from tb_e_other order by dealuserid
公司主營業(yè)務(wù):網(wǎng)站建設(shè)、成都做網(wǎng)站、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。成都創(chuàng)新互聯(lián)公司是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。成都創(chuàng)新互聯(lián)公司推出渝中免費做網(wǎng)站回饋大家。
結(jié)論:一個標(biāo)準(zhǔn)的SQL查詢語句。
前提:假設(shè)起始時間:start_at,結(jié)束時間:end_at。
現(xiàn)在根據(jù)不同的字段類型說明如何寫。
1 - INT類型,存儲時間戳
SELECT * FROM table_name WHERE ( end_at - start_at ) 3600;
2 - DATETIME類型
假如 start_at 格式類似于 “2020-10-01 12:13:14”。那么使用函數(shù)進(jìn)行求差值:
SELECT * FROM table_name WHERE TIMESTAMPDIFF(SECOND, start_at, end_at) 3600;
以上。
根據(jù)收支方向?qū)痤~乘以1或-1,并求和即可
select sum(收支金額*if(收支類型='收入',1,-1)) from china
換一種思路即可了。這種只能遍歷數(shù)據(jù)庫的,所以你用 LIMIT 0,2 設(shè)置偏移很好,另外 可以用 PHP 來更新偏移量,就更智能了。記得對字段建立索引,可以加快查詢。
先貼出來我的腳本:
#/bin/bash
User="test"
Pass="123456"
Hos="192.168.133.167"
Da=`date `
record_path="/tmp/daily_r.txt"
MYSQL="/usr/mysql/bin/mysql"
echo "采集速度時間間隔超過半天即為不正常" $record_path
$MYSQL -u$User -p$Pass -h$Hos -e "select TIMESTAMPDIFF(second, createtime, pubdate) as '相差秒數(shù)',createtime,pubdate,keyword_tx from adresource_test.tbl_newscontent_test order by d_id desc limit 1\G;" $record_path
然后我解釋下腳本含義,首先我這個腳本是統(tǒng)計我adresource_test 表中的關(guān)于新聞內(nèi)容的一個采集時間一個入庫時間的差值,就此來判斷我的數(shù)據(jù)入庫程序正常與否。
User是數(shù)據(jù)庫用戶名,Pass 是數(shù)據(jù)庫密碼 Hos是數(shù)據(jù)庫地址Da 是我要記錄一個日期,比對當(dāng)前日期,也相當(dāng)于留個日志 record_path 日志記錄位置
MYSQL是mysql的bin目錄,防止命令找不到。
3
計算tbl_test 表中的兩個字段一個是發(fā)布時間一個是創(chuàng)建時間,使用變量TIMESTAMPDIFF 來計算二者的差值,
creattime - pubdate。minute的意思是以分鐘來做結(jié)果單位,limit 2 是兩條記錄
MySql計算兩個日期時間的差函數(shù):
第一種:TIMESTAMPDIFF函數(shù),需要傳入三個參數(shù),第一個是比較的類型,可以比較FRAC_SECOND、SECOND、 MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER或 YEAR幾種類型,第二個和第三個參數(shù)是待比較的兩個時間,比較是后一個時間減前一個時間,具體用法如下:
[sql] view plain copy
SELECT TIMESTAMPDIFF(DAY,'2012-10-01','2013-01-13');
返回結(jié)果是104,這里比較的是兩個時間的天數(shù)差;
[sql] view plain copy
SELECT TIMESTAMPDIFF(MONTH,'2012-10-01','2013-01-13');
這里比較的是兩個時間的月份,返回的結(jié)果是3;
第二種方法: DATEDIFF函數(shù),就傳入兩個日期函數(shù),比較的DAY天數(shù),第一個參數(shù)減去第二個參數(shù)的天數(shù)值,具體用法如下:
[sql] view plain copy
SELECT DATEDIFF('2013-01-13','2012-10-01');
返回的結(jié)果也是104。
另外其它的日期函數(shù),
now()函數(shù)返回的是當(dāng)前時間的年月日時分秒,如:2008-12-29 16:25:46
CURDATE()函數(shù)返回的是年月日信息: 如:2008-12-29
CURTIME()函數(shù)返回的是當(dāng)前時間的時分秒信息,如:16:25:46
另外,如果我們想對一個包含年月日時分秒日期格式化成年月日日期,可以使用DATE(time)函數(shù),如
DATE(now()) 返回的是 2008-12-29