MySQL查询(Not Like语句)

时间:2016-05-10 02:47:49

标签: mysql database

我有一张显示汽车预订的表格,我有两个按钮来过滤日期之间的预订。我的问题在于,当我选择过滤器时,我过滤掉在日期中没有预约的汽车的查询不太有效,因为汽车通常在不同的日期有多个预订。 在第4至第6天之间搜索 汽车1第1天,第4天 汽车2第2天,第5天

它将显示汽车1和汽车2。

public function search_free_boat($keyword, $fromdate, $todate){

    $where = 'where (boat_data.boat_name NOT LIKE reservation_data.boatname AND "fromdate > '%".$keyword."%' OR todate < '%".$keyword."%' OR fromdate IS NULL OR todate IS NULL")';
    $order = "id DESC";
    if(!empty($sort_field))
        $order = $sort_field." ".$sort_order;
    $query=$this->db->query("SELECT * , boat_data.boat_name as freeboat, reservation_data.boatname as busyboat FROM boat_data LEFT JOIN reservation_data ON boat_data.boat_name =reservation_data.boatname ".$where." GROUP BY boat_name ORDER BY boat_name ");
    return $query->result_array();
}     

我不确定是否应该使用Distinct(如果这样可行)。我想要的是它显示的汽车与任何预订时间都不匹配。

0 个答案:

没有答案