如何使用时间戳和PHP在MySQL中返回当月的数据?
这应该使用我拥有的PHP/MySQL时间戳来处理所有其他数据。基本上,我在MySQL和PHP中使用了时间戳特性 我使用now for MySQL插入:如何使用时间戳和PHP在MySQL中返回当月的数据?,php,mysql,timestamp,Php,Mysql,Timestamp,这应该使用我拥有的PHP/MySQL时间戳来处理所有其他数据。基本上,我在MySQL和PHP中使用了时间戳特性 我使用now for MySQL插入: now() 或类似于PHP中的内容: $date=日期(“Y-m-d H:i:s”) 这是我的一些数据: Id AdId Unique Md5 Date Stamp
now()
或类似于PHP中的内容:
$date=日期(“Y-m-d H:i:s”)代码>
这是我的一些数据:
Id AdId Unique Md5 Date Stamp IP
61860 207 92cea3a296fdc76bac6fda219xxxxxx 2012-12-01 2012-12-01 17:48:31 74.125.181.xx
61859 208 abe3aec5c24301db2d5803a310xxxxxx 2012-12-01 2012-12-01 17:48:31 74.125.181.xx
61858 207 c93c67a013c64df53cbeec9346xxxxxx 2012-12-01 2012-12-01 17:48:11 95.21.xxx.138
61857 207 596cf87f2405874c7172f6d0dcxxxxxx 2012-12-01 2012-12-01 17:47:54 188.xxx.98.242
61856 212 bbba41c211e2829d622c55d00dxxxxxx 2012-12-01 2012-12-01 17:47:17 141.xxx.9.40
这是我的疑问之一。基本上,我试图获得207个AdId的行总数和本月的时间戳(2012-12)
它返回0个结果。我打算做:
<?php
$currentDate=date("Y-m-d H:i:s");
$currentMonth=date("Y-m");
$trafficsql=mysql_query("SELECT COUNT(adid) AS hits FROM `".$dn."`.`adviews` WHERE `adid`='".$rz["id"]."' AND `stamp`='".$currentMonth"'");
while($vss=mysql_fetch_array($trafficsql)){
echo $vss["hits"];
}
您可以将时间戳作为字符串进行比较,但需要使用
SELECT COUNT(adid) AS hits
FROM `ha1`.`adviews`
WHERE `adid`='212' AND `stamp` LIKE '2012-12%'
试一试
使用:从ha1.adviews中选择COUNT(adid)作为点击,其中adid=212,stamp>date\u sub(现在(),间隔1个月)
假设您的stamp列是datetime类型,您可以在php语法中使用以下逻辑:-)
其中月份(盖章)=月份(当前日期)和
YEAR(stamp)=YEAR(当前日期)
这很有趣。不过我更喜欢日期。我看不出DATE_格式有多大用处?这是长期的吗?我的意思是我宁愿在字符串中调用PHP并调用它?不需要在PHP中这样做。这是mysql函数。请参阅我的回答中的查询我如何将此逻辑转换到示例中?
SELECT COUNT(adid) AS hits
FROM `ha1`.`adviews`
WHERE `adid`='212' AND `stamp` LIKE '2012-12%'
$trafficsql=mysql_query("SELECT COUNT(adid) AS hits FROM `".$dn."`.`adviews` WHERE `adid`='".$rz["id"]."' AND DATE_FORMAT(`stamp`, '%Y-%m')='".$currentMonth"'");