加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

如何在Kohana ORM中使用BETWEEN子句

发布时间:2020-12-15 05:06:40 所属栏目:Java 来源:网络整理
导读:我是kohana的新手.我正在使用ORM获取数据. 我想构建一个BETWEEN子句存在的查询.如下 SELECT `rooms`.* FROM `rooms` LEFT JOIN `events` ON (`rooms`.`id` = `events`.`room_id`) WHERE `events`.`room_id` IS NULL OR (`events`.`eventstart` NOT BETWEEN 1
我是kohana的新手.我正在使用ORM获取数据.

我想构建一个BETWEEN子句存在的查询.如下

SELECT `rooms`.* FROM `rooms` LEFT JOIN `events` ON (`rooms`.`id` = `events`.`room_id`) 
WHERE `events`.`room_id` IS NULL 
OR (`events`.`eventstart` NOT BETWEEN 1312210800  AND 1312218000)

因为我正在做以下事情

$rooms = $room->join('events','LEFT')
                  ->on('rooms.id','=','events.room_id')
                  ->where('events.room_id','IS',NULL)
                  ->and_where_open()
                  ->or_where('events.eventstart','NOT BETWEEN',$from)
                  ->and_where_close()
                  ->find_all();

但我得到这样的查询

SELECT `rooms`.* FROM `rooms` LEFT JOIN `events` ON (`rooms`.`id` = `events`.`room_id`)
WHERE `events`.`room_id` IS NULL AND (`events`.`eventstart` NOT BETWEEN 1312210800)

有人可以指出如何使用BETWEEN子句

解决方法

我认为你应该使用or_where(‘events.eventstart’,’BETWEEN’,array($from,$to));
有关Kohana查询生成器的文档可以在这里找到 – > http://kohanaframework.org/3.2/guide/database/query/builder ORM使用Query Builder.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读