php - 如何从日期范围 PHP 中获取年数

标签 php mysql sql-server date

我有许多使用日期格式的日期范围的日期。现在,我想从那个日期起只有几年。

比方说某人,给出日期范围从:01-01-2010 到 09-05-2019。

我想从这个日期起只有,所以我将把它们包括在我的 sql 查询中。

如果在今年指定范围内,查询仅适用于 2015,但我如何才能只在范围内的所有年份使用它?

这里是查询:

$sql = "SELECT
    MONTH (transaction_date),
    SUM(case when finance_type != 'Deposit' then amount else 0 end) AS total_amount,
    SUM(case when finance_type = 'Deposit' then amount else 0 end) AS deposit,
    SUM(case when finance_type != 'Deposit' AND amount < 0 then amount else 0 end) AS expenses,
    SUM(case when finance_type != 'Deposit' AND amount > 0 then amount else 0 end) AS earning,          
    SUM(case when finance_type != 'Deposit' AND amount!='' then num_contract else 0 end) AS total_contracts,
    transaction_date  
      FROM 
        `tbl_finanace`
            WHERE
                transaction_date LIKE '%2015%'
            AND user_id = '15'
                GROUP BY
            MONTH (transaction_date)
                ORDER BY
            MONTH (transaction_date)";

最佳答案

如果是 DATETIME 字段,您可以使用小于和大于。

where transaction_date <= '2010-01-01 00:00:01' and transaction_date >= '2005-12-31 23:59:59'

关于php - 如何从日期范围 PHP 中获取年数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30209322/

相关文章:

php - 此查询有什么问题?从 mysql 表中加载超过 220,000 条记录的数据需要 0.5 到 0.6 秒

c# - SqlParameter无法与INSERT语句一起使用

javascript - 在 Javascript 中突出显示单词 - 为什么在页面完全加载后它们不会保持突出显示?

php - 能否通过php中的ini_set()函数设置 "allow_url_fopen" "ON"

java - Hibernate 删除具有延迟加载的@ManyToMany 关系中的关系

android - 将数组插入Mysql?

sql-server - Elasticsearch SQL Server同步

sql - SQL Server 中的动态数据透视表

php - CodeIgniter - 仅当有查询要运行时才连接到数据库

PHP 严格标准 : Creating default object from empty value