扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
select dealuserid,sum(dealdate)/count(dealuserid) as 平均 from tb_e_other order by dealuserid
公司主营业务:网站建设、成都做网站、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联公司推出渝中免费做网站回馈大家。
结论:一个标准的SQL查询语句。
前提:假设起始时间:start_at,结束时间:end_at。
现在根据不同的字段类型说明如何写。
1 - INT类型,存储时间戳
SELECT * FROM table_name WHERE ( end_at - start_at ) 3600;
2 - DATETIME类型
假如 start_at 格式类似于 “2020-10-01 12:13:14”。那么使用函数进行求差值:
SELECT * FROM table_name WHERE TIMESTAMPDIFF(SECOND, start_at, end_at) 3600;
以上。
根据收支方向对金额乘以1或-1,并求和即可
select sum(收支金额*if(收支类型='收入',1,-1)) from china
换一种思路即可了。这种只能遍历数据库的,所以你用 LIMIT 0,2 设置偏移很好,另外 可以用 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 '相差秒数',createtime,pubdate,keyword_tx from adresource_test.tbl_newscontent_test order by d_id desc limit 1\G;" $record_path
然后我解释下脚本含义,首先我这个脚本是统计我adresource_test 表中的关于新闻内容的一个采集时间一个入库时间的差值,就此来判断我的数据入库程序正常与否。
User是数据库用户名,Pass 是数据库密码 Hos是数据库地址Da 是我要记录一个日期,比对当前日期,也相当于留个日志 record_path 日志记录位置
MYSQL是mysql的bin目录,防止命令找不到。
3
计算tbl_test 表中的两个字段一个是发布时间一个是创建时间,使用变量TIMESTAMPDIFF 来计算二者的差值,
creattime - pubdate。minute的意思是以分钟来做结果单位,limit 2 是两条记录
MySql计算两个日期时间的差函数:
第一种:TIMESTAMPDIFF函数,需要传入三个参数,第一个是比较的类型,可以比较FRAC_SECOND、SECOND、 MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER或 YEAR几种类型,第二个和第三个参数是待比较的两个时间,比较是后一个时间减前一个时间,具体用法如下:
[sql] view plain copy
SELECT TIMESTAMPDIFF(DAY,'2012-10-01','2013-01-13');
返回结果是104,这里比较的是两个时间的天数差;
[sql] view plain copy
SELECT TIMESTAMPDIFF(MONTH,'2012-10-01','2013-01-13');
这里比较的是两个时间的月份,返回的结果是3;
第二种方法: DATEDIFF函数,就传入两个日期函数,比较的DAY天数,第一个参数减去第二个参数的天数值,具体用法如下:
[sql] view plain copy
SELECT DATEDIFF('2013-01-13','2012-10-01');
返回的结果也是104。
另外其它的日期函数,
now()函数返回的是当前时间的年月日时分秒,如:2008-12-29 16:25:46
CURDATE()函数返回的是年月日信息: 如:2008-12-29
CURTIME()函数返回的是当前时间的时分秒信息,如:16:25:46
另外,如果我们想对一个包含年月日时分秒日期格式化成年月日日期,可以使用DATE(time)函数,如
DATE(now()) 返回的是 2008-12-29
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流