laravel用clickhouse查询问题及注意事项是什么
Admin 2022-11-29 群英技术资讯 648 次浏览
使用 clickhouse
尤其注意:不能这么写!
$where = [];
if($cookieId) {
$where['cookie_id'] = $cookieId;
}
if($host) {
$where['host'] = $host;
}
if($uri) {
$where['uri'] = $uri;
}
$builder = DB::connection('clickhouse')
->table((new AccessLogs)->getTable())
->where($where);
if(!empty($startTime)) {
$builder->where('create_time', '>=', $startTime);
}
if(!empty($endTime)) {
$builder->where('create_time', '<=', $endTime);
}
登录后复制
当多个条件查询时,$where 数组在 sql 中会被当成一个字段,从而导致 DB:: Exception: Missing columns: ‘2022-09-27 13:00:49’ ‘2022-09-27 16:00:49’ while processing query 的错误。
这样优化:
$builder = DB::connection('clickhouse')
->table((new AccessLogs)->getTable());
if(!empty($cookieId)) {
$builder->where('cookie_id', $cookieId);
}
if(!empty($host)) {
$builder->where('host', $host);
}
if(!empty($uri)) {
$builder->where('uri', $uri);
}
if(!empty($startTime)) {
$builder->where('create_time', '>=', $startTime);
}
if(!empty($endTime)) {
$builder->where('create_time', '<=', $endTime);
}
登录后复制
才能正确查询。
多提一句:在命令行查询时,参数值使用单引号,使用双引号时,参数值也会被当成一个字段:
正确操作是:
select * from access_log where create_time >= ‘2022-09-27 13:00:49’ and create_time <= ‘2022-09-27 16:00:49’ order by create_time desc limit 10;
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
laravel怎样实现无限级分类?laravel实现无限级分类其实不是很难,但是要做好也是讲究方法和技巧的,下面给大家介绍一个laravel实现无限级分类的方法,希望大家能有收获。
转自:http://www.tianzhigang.com/article.asp?id=280PHP的数据类型转换属于强制转换,允许转换的PHP数据类型有:(int)、(integer):转换成整形(float)、(double)、(real):转换成浮点型(string):转换成字符串(bool)、(boolean):转换成布尔类型(array):转换成数组(object):转
本文由PHP7教程栏目给大家介绍关于PHP7下的协程如何实现,希望对需要的朋友有所帮助!
php中实现数组去重的函数:1、array_unique()先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。2、使用array_flip作为数组去重时数组的值必须能够作为键名。
Session中文译名叫做“会话”,其本来的含义是指有始有终的一系列动作/信息。PHP session变量用于存储关于用户会话(session)的信息,或者更改用户会话(session)的设置。Session变量存储单一用户的信息,并且对于应用程序中的所有页面都是可用的。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008