日志解析器不适用于 WHERE 语句中的命名列
Log Parser not working with named column in WHERE statement
我 运行 遇到了 Log Parser 的问题,我无法在 WHERE 语句中使用命名列。命名列在 Order By 语句中工作正常。从 WHERE 语句中删除命名列可使查询正常工作。
这是我得到的错误:
Error parsing query: WHERE clause: Semantic Error: WHERE clause contains aggregate functions [SQL query syntax invalid or unsupported.]
这是我的查询:
SELECT cs-uri-stem, count(cs-uri-stem) as hits INTO '" + $Destination + "' FROM $filePaths WHERE (cs-uri-stem LIKE '/testing%' OR cs-uri-stem LIKE '%/test%') AND (date > '2020-08-01' AND date < '2020-09-31') AND (hits > 1) Group By cs-uri-stem order by hits desc
Log Parser 不支持这个吗?
没有 SQL 方言支持这一点 - 聚合函数的结果不能在 WHERE
子句中引用。您可以使用 HAVING
子句代替过滤聚合:
...
Group By cs-uri-stem
HAVING hits > 1
order by hits desc
我 运行 遇到了 Log Parser 的问题,我无法在 WHERE 语句中使用命名列。命名列在 Order By 语句中工作正常。从 WHERE 语句中删除命名列可使查询正常工作。
这是我得到的错误:
Error parsing query: WHERE clause: Semantic Error: WHERE clause contains aggregate functions [SQL query syntax invalid or unsupported.]
这是我的查询:
SELECT cs-uri-stem, count(cs-uri-stem) as hits INTO '" + $Destination + "' FROM $filePaths WHERE (cs-uri-stem LIKE '/testing%' OR cs-uri-stem LIKE '%/test%') AND (date > '2020-08-01' AND date < '2020-09-31') AND (hits > 1) Group By cs-uri-stem order by hits desc
Log Parser 不支持这个吗?
没有 SQL 方言支持这一点 - 聚合函数的结果不能在 WHERE
子句中引用。您可以使用 HAVING
子句代替过滤聚合:
...
Group By cs-uri-stem
HAVING hits > 1
order by hits desc