找到两个日期start_date
和account_add_date
的差异,然后插入到名为account_age
的列中的最佳方法是什么?
我需要的是让用户选择一个start_date
说它的一月。
然后他们添加的日期account_add_date
说三月。
差额是 2 个月,所以在account_age
将是 2,
那么在四月,2将是3。5月4日、6月5日等
有人知道怎么做吗?
我当前的插入查询模型
function create_bank()
{
$this->load->helper('date');
$new_bank_acc_insert_data = array(
'bank_name' => $this->input->post('bank_name'),
'interest' => ($this->input->post('interest') / 100),
'start_amount' => $this->input->post('start_amount'),
'length' => $this->input->post('length'),
'start_date' => date('Y-m-d',strtotime($this->input->post('start_date'))),
'mem_id' => $this->session->userdata('id'),
'account_add_date' => $this->current_date()
);
$insert = $this->db->insert('bank', $new_bank_acc_insert_data);
return $insert;
}
查找帐户年龄的想法
SELECT DATEDIFF('start_date','account_add_date')
SELECT
(
12* (YEAR(account_add_date) - YEAR(start_date)) +
(MONTH(account_add_date) - MONTH(start_date))
) AS differenceInMonth
FROM
YOUR_TABLE
尽管DATEDIFF
函数返回两个日期(以天为单位)的差异,但与月份的差异相比更准确
解释:
例:
start_date = 2014 March
account_add_date = 2015 January
YEAR(account_add_date) = 2015
YEAR(start_date) = 2014
MONTH(account_add_date) = 1
MONTH(start_date) = 3
So according to the query:
12 * (2015-2014) + (1-3) = 12 * 1 - 2 = 10 (Months)