SumoLogic查询使用Join关联ID与名称的语法问题求助
修正后的SumoLogic关联查询
首先给出能正确运行的查询示例,解决你遇到的on语句语法错误:
_sourceCategory=foo _collector=bah eventType=add_user_to_group | join ( _sourceCategory=foo _collector=bah eventType=hist_user_create | fields userId, userName ) on userId, ( _sourceCategory=foo _collector=bah eventType=group_create | fields groupId, groupName ) on groupId | fields eventType, userId, userName, groupId, groupName
错误原因说明
你遇到的语法错误核心是多个关联子查询之间未用逗号分隔。SumoLogic的join语法规则要求:当同时关联多个子查询数据集时,每个子查询块必须用逗号隔开。如果省略逗号,解析器会将下一个子查询开头的on关键字识别为非法字符,从而抛出"预期','却找到'o'"的报错。
额外注意事项
- 每个子查询必须用括号完整包裹,
on关键字需紧跟对应子查询,明确指定关联字段 - 子查询中务必通过
fields语句保留关联字段(如userId、groupId)和需要映射的名称字段(如userName、groupName),避免冗余字段干扰关联 - 若需要指定关联类型(如左连接、内连接),可在
join后追加关键字,例如| join left实现左连接
内容的提问来源于stack exchange,提问作者Ryan CrawCour
相关产品推荐
相关产品推荐

