[英]Get the empty records using SQL
我有一個表單,可以選擇不同的框,並且每個框在數據庫中都有一些記錄,即(框的開口數),但是對於選定的框,可能沒有記錄存在,即框未打開甚至一次 當前,當我選擇其他框並且如果框的記錄不存在時,它甚至都不會返回空數組,而我想要它甚至返回所選框的空結果。 我該如何實現? 我的查詢是
public function getBoxOpenings($boxes, $from_date, $to_date){
$query = $this->db->select('box_id, COUNT(box_id) AS Openings')
->from('mc_boxes_has_openings')
->where_in('box_id', $boxes)
->where('actiontime >=', $from_date)
->where('actiontime <=', $to_date)
->group_by('box_id')
->get();
$data = $query->result_array();
return $data;
}
編輯:
如果我選擇3個框並提交表單,並且記錄僅存在2個框,則返回類似以下內容
Array
(
[0] => Array
(
[mc_boxes_idmc_boxes] => 12
[location] => FRA-Air
[Openings] => 1
)
[1] => Array
(
[mc_boxes_idmc_boxes] => 14
[location] => FRA-Hof
[Openings] => 1
)
)
我怎樣才能得到一個空的所有三個記錄
[2] => Array
(
[mc_boxes_idmc_boxes] => 16
[location] => Test
[Openings] =>
)
謝謝
為什么不只計算整個記錄?
public function getBoxOpenings($boxes, $from_date, $to_date){
$query = $this->db->select('box_id, COUNT(*) AS Openings')
->from('mc_boxes_has_openings')
->where_in('box_id', $boxes)
->where('actiontime >=', $from_date)
->where('actiontime <=', $to_date)
->group_by('box_id')
->get();
$data = $query->result_array();
return $data;
}
雖然我不明白您的group_by子句...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.