mysql 怎么计算第二个数字和第一个数字差值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 怎么计算第二个数字和第一个数字差值相关的知识,希望对你有一定的参考价值。
mysql
怎么计算第二个数字和第一个数字差值假如我有两个字段ID,价格。 一个id对应多个价格
现在我要算有效价格数,就是第二个价格比第一个价格差值在10%之内。
就是假如 一个id对应了4个价格,分别是 第一个数是100 第二个要在90(100*90%)之内,那就算有效,第三个在81之内,那81这个数就有效,第四个假如50,那第四个数就无效 。所以这id一共就是2个有效价格。
#/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 是两条记录 参考技术A 说的有点糊涂了
如何使用mysql计算两个日期之间的时间差
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 参考技术A 可以转换时间戳相减结果转换回去即可
以上是关于mysql 怎么计算第二个数字和第一个数字差值的主要内容,如果未能解决你的问题,请参考以下文章
Excel中如何计算日期所在的这年的第几周,以周一作为一周的第一天