使用 CodeIgniter 以日期格式在数据库上计算每月、每年的日期

Posted

技术标签:

【中文标题】使用 CodeIgniter 以日期格式在数据库上计算每月、每年的日期【英文标题】:count date per month , per year on database with date format with CodeIgniter 【发布时间】:2016-05-23 02:45:47 【问题描述】:

如何根据日期格式根据数据库中的日期计算1bulan/1年的数据量?我用的是codeigniter

例子

日期 2016-02-10

2016-05-19

2016-07-20

2016-02-30

2016-05-20

2016-05-21

结果计数

Mounth 2 月的数据 = 2

Mounth May 的数据 = 3

7 月山的数据 = 1

这是我的脚本

<?php 
        $sql = "SELECT * FROM tbcounter ";
        $get_monthly = " WHERE date LIKE '".date("Y-m")."%'";
        $monthly = mysql_num_rows(mysql_query($sql . $get_monthly));    
        echo $monthly;                      
?>

【问题讨论】:

由于不清楚,请在问题中添加更多细节 @noor,谢谢 noor,我正在更新我的问题,如果这个月 2 月,我想在 2 月和其他月份有多少访客。从具有日期格式的数据库中检索数据 为什么你不使用活动课程? @Duwiirwanto 试试我的回答,如果有帮助,请告诉我:) 使用WHERE date = date( 'Y-m' )。这将为您提供当年数据的当前月份。 【参考方案1】:

您可以使用 DATE_FORMAT(date_column,'desired_output'),如下例所示:- 您可以在http://php.net/manual/en/function.date.php 上阅读有关日期功能的信息

$date_variable = date("Y-m",strtotime('last month')); //prints 2016-01 
echo   $this->db->get_where("tbcounter",array("DATE_FORMAT(`date`,'%Y-%m')"=> $date_variable ))->num_rows();

这是演示代码:)

【讨论】:

@Paveen Kumar nice..good...你能举个变量的例子 @Paveen Kumar,您的回答非常有帮助 nice..workk ,但是如何为年份和月份创建变量?可以举个例子吗 @Duwiirwanto 您必须尝试使用​​日期函数 php... :) 我提供了手册链接。阅读并努力。 感谢@Praveen Kumar,它对我很有帮助,我的问题已经解决了,我尝试自己再次尝试日期功能【参考方案2】:

对于每年和每月的计数数据,您可以使用

GROUP BY YEAR(date), MONTH(date)

在您的查询中。

例子:

SELECT count( * )
FROM `TableNAme`
GROUP BY YEAR( `Date` )
LIMIT 0 , 30


SELECT count( * )
FROM `TableNAme`
GROUP BY MONTH( `Date` )
LIMIT 0 , 30

这里Date 是您在表格中的列名。

【讨论】:

感谢@Bugfixer 的回答,但结果与数据库中的数据不匹配?

以上是关于使用 CodeIgniter 以日期格式在数据库上计算每月、每年的日期的主要内容,如果未能解决你的问题,请参考以下文章

在 CodeIgniter 中比较日期

Codeigniter - 使用日期格式将表记录导出为 CSV

Codeigniter模型中的Mysql日期格式

将发布日期与codeigniter中的时间戳进行比较

Codeigniter 数据库日期比较

使用ajax codeigniter php根据日期检索数据库值