我想从日志文件中清除robots条目。一种通过weblog中的user-agent字段来识别爬虫的方法。我将原始日志存储在一个文件夹中,并在其中标记了流行的爬虫 crawler
table。为了清理那些用户代理与令牌匹配的日志,我进行了以下查询
CREATE TABLE temp
AS
SELECT host,time,method,url,protocol,status,size,referer,agent
FROM raw_logs
WHERE
agent NOT RLIKE (SELECT concat_ws("|",collect_set(concat("(.*",token,".*)"))) FROM crawler) ;
这给了我一个例外 cannot recognize input near 'SELECT' 'concat_ws' '(' in expression specification
如果我手动替换子查询的结果,那么它工作得很好。
CREATE TABLE temp
AS
SELECT host,time,method,url,protocol,status,size,referer,agent
FROM raw_logs
WHERE agent NOT RLIKE '(.*Googlebot.*)|(.*bingbot.*)' ;
销售订单子查询 LIKE
配置单元1.0.1不支持子句?mysql中类似的查询非常适合。
暂无答案!
目前还没有任何答案,快来回答吧!