在 WHERE 条件下使用 BETWEEN

2022-08-30 20:14:06

我希望以下功能来选择在某个和.最好的方法是什么?$minvalue$maxvalue

function gethotels($state_id,$city,$accommodation,$minvalue,$maxvalue,$limit,$pgoffset)
    {
        $this->db->limit($limit, $pgoffset);
        $this->db->order_by("id", "desc");
        $this->db->where('state_id',$state_id);
        $this->db->where('city',$city);

        // This one should become a between selector
        $this->db->where($accommodation,$minvalue); 

        $result_hotels = $this->db->get('hotels');
        return $result_hotels->result();

   }

答案 1

您应该使用

$this->db->where('$accommodation >=', minvalue);
$this->db->where('$accommodation <=', maxvalue);

我不确定语法,所以如果它不正确,我恳求你的原谅。
无论如何,它是使用>=min && <=max实现的。
这就是我的例子的含义。BETWEEN

编辑:
看看这个链接,我想你可以写:

$this->db->where("$accommodation BETWEEN $minvalue AND $maxvalue");

答案 2

在Codeigniter中,这是在两个日期记录之间进行检查的简单方法...

$start_date='2016-01-01';
$end_date='2016-01-31';

$this->db->where('date BETWEEN "'. date('Y-m-d', strtotime($start_date)). '" and "'. date('Y-m-d', strtotime($end_date)).'"');

推荐