我有一个日志解析器查询,它获取前200个uri,但是我不想要任何有点(.)的cs-uri-茎条目。在他们身上。
这一点和我的想法一样接近,但似乎通配符并没有像我预期的那样发挥作用:
"SELECT TOP 200 cs-uri-stem, COUNT(*) AS Total INTO \Top200URIs_NoDots.csv
FROM "\2015-01\U*.log"
GROUP BY cs-uri-stem
HAVING cs-uri-stem NOT LIKE '%.%'
ORDER BY Total DESC"当我运行这个程序时,我会得到一个错误:
... HAVING cs-uri-stem NOT LIKE ''...
Error: Syntax Error: <having-clause>: not a valid <expression>为什么要忽略%和两者之间的一切呢?
发布于 2015-01-27 15:14:01
HAVING用于使用分组数据上的聚合函数过滤组结果。对分组数据的筛选更需要处理,因为必须先完成分组。在这种情况下,您的查询将使用WHERE子句执行得更好。此外,如果是在批处理文件中,请记住使用%%。单个%表示一个批处理变量,不会使它到达程序的参数。
https://stackoverflow.com/questions/28173568
复制相似问题