0
我有三個表:tbl_days,tbl_slots和tbl_bookings如下。Mysql的加入多行,而不是一個返回結果爲每個實例
客戶都應該訂在一天的插槽。
現在用下面的查詢:
$slots = $this->common->slots();
if ($slots != NULL) {
foreach ($slots as $C):
$start = $C->start;
$stop = $C->stop;
$slotspace= $start." to ".$stop;
$available='Available';
$booked ='Booked';
$sum_col[] = " IF(tbl_bookings.slot_id =". $C->id.",'".$booked."','".$available."') AS '" . $slotspace . "'";
endforeach; }
$sqlquery = $this->db->query("SELECT tbl_days.date_day,
" . implode(",", $sum_col) . "
FROM tbl_days
LEFT JOIN tbl_bookings ON tbl_bookings.date = tbl_days.date_day
LEFT JOIN tbl_slots ON tbl_slots.id = tbl_bookings.slot_id
LEFT JOIN tbl_fields ON tbl_fields.id = tbl_bookings.field_id
");
return $sqlquery->result();
預期的結果應該是:
請注意如何預訂的信息顯示在同一日期有多行。
日期是從今天日期(從今天接下來的7天)
顯示插槽上一行的一天。
顯示日期,無論是否有預約,如第29日。
請幫助我如何去做這件事。 請注意,我正在使用數據表。
看過它,很不幸,它沒有解決我的問題。 – mutiemule