mysql和php的查询逻辑

mysql和php的查询逻辑,php,sql,zend-framework,Php,Sql,Zend Framework,我们有一家公司,他们每年4月“本年度”到3月“明年”工作 我正在编写和excel报告,以便根据该期间提取报告。明年的1月、2月和3月是哪一年,但我继续得到今年的数据,你明白吗? bus_year=是从1月到12月的一年,但实际上是从4月到3月 一年就是一年 我想知道,我如何才能写出一个好的逻辑,在选定的月份,逻辑将加1年到当前,从2013年1月到2014年1月。我试图将时间限制在几年内,但不能仅使用unix_时间戳,因为它刚刚在数据库中实现,并且其中的数据超过了5年 现行代码 private

我们有一家公司,他们每年4月“本年度”到3月“明年”工作 我正在编写和excel报告,以便根据该期间提取报告。明年的1月、2月和3月是哪一年,但我继续得到今年的数据,你明白吗? bus_year=是从1月到12月的一年,但实际上是从4月到3月 一年就是一年

我想知道,我如何才能写出一个好的逻辑,在选定的月份,逻辑将加1年到当前,从2013年1月到2014年1月。我试图将时间限制在几年内,但不能仅使用unix_时间戳,因为它刚刚在数据库中实现,并且其中的数据超过了5年

现行代码

 private $month_array  = array(
        '01' => "January",
        '02' => "February",
        '03' => "March",
        '04' => "April",
        '05' => "May",
        '06' => "June",
        '07' => "July",
        '08' => "August",
        '09' => "September",
        '10' => "October",
        '11' => "November",
        '12' => "December"
    );

    private $financial_year_month = array(
        '04' => '01',
        '05' => '02',
        '06' => '03',
        '07' => '04',
        '08' => '05',
        '09' => '06',
        '10' => '07',
        '11' => '08',
        '12' => '09',
        '01' => '10',
        '02' => '11',
        '03' => '12'
    );
也许是以这样的形式,比如说

04-$year, 05-year, ... , 02-($year+1), 03-($year+1)
//sql查询 公共职能部门获得(年) { $select=$this->select(); $select->where('bus_year=?',$year); 返回$this->fetchAll($select); }

数据库列Id/月/年/总线\年

目前不确定如何定义和初始化年份。像这样的东西,但我目前的代码不会接受它,不知道我错过了什么

if($month >= 01 && $month <= 03){ $year = $year + 1;

如果($month>=01&&$month)数据库是什么?也许最好的选择是将逻辑与数据库放在一起。它们有过多的或日期/时间函数,这将使这变得容易。类似于
where datefield before now()和now()之间+间隔1年
,假设mysql?mysql,问题是前几年没有时间戳..编辑我的问题请再次检查它添加了几句关于我想要实现的内容请提供您的数据示例和所需的查询结果。