首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何利用联接解决Kusto的大小写敏感性问题

如何利用联接解决Kusto的大小写敏感性问题
EN

Stack Overflow用户
提问于 2019-01-06 16:30:19
回答 3查看 4.9K关注 0票数 4

我正在用(Kusto)构建动态计算机组。我需要连接两个计算机大小写不匹配的表。有人想出办法解决这个问题了吗?

示例(使用一台计算机):

心跳表有名为ABCDE.domain.com的计算机,Application_CL表有名为abcde.DOMAIN.com的计算机

如果我运行这个查询,结果集是空的,除非FQDN是完全匹配的。如果这是SQL,它将返回ABCDE.domain.com,这正是我们所需要的。

代码语言:javascript
复制
let H = Heartbeat | summarize by Computer; let A = Application_CL | where Name_s == "AppName" | summarize by Computer; H | join A on $left.Computer == $right.Computer | distinct Computer

我尝试使用=~作为联接运算符,但它必须是==。在这种情况下,toupper()和tolower()对我没有好处。

提前感谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-01-07 01:16:51

如果查询中的逻辑允许使用不区分大小写的in~()!in~()运算符,则应选择该选项。

否则,在对该列应用联接之前,您可以在两个联接腿中扩展一个计算过的列(但是,与不需要这样做的情况相比,它的效率要低)。

类似于:

代码语言:javascript
复制
T1 
| extend lowercase_computer_name = tolower(ComputerName)
| join (T2 | extend lowercase_computer_name = tolower(ComputerName))
  on lowercase_computer_name
票数 7
EN

Stack Overflow用户

发布于 2020-08-09 13:06:55

您可以使用搜索,这在默认情况下是不区分大小写的。

票数 0
EN

Stack Overflow用户

发布于 2021-06-17 17:45:10

如果要做的是对大小写不敏感的regex计算,则可以在regex模式的开始处包含大小写不敏感标志。

如以下示例所示:

代码语言:javascript
复制
ServiceName matches regex "(?i)super duper express"

请参见:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54063592

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档