在KDB SQL“ like”查询中转义*字符

时间:2019-08-09 08:31:57

标签: kdb

我有一种情况,我的KDB表中有数据,该数据中的字符串包含多个连续的星号字符,并且我需要能够搜索该字符串。假设我要搜索的字符串是foo**bar,那么我要编写的查询是:

select from table where column like "foo**bar" 

我需要转义*字符,但是我无法在文档中找到如何做到这一点。我尝试了反斜杠和其他几个变体,但均未成功。想必这可能吗?

2 个答案:

答案 0 :(得分:3)

方括号与In [7]: d.sel(dict(dim_0=1, dim_1='a')) Out[7]: <xarray.DataArray (dim_0: 1, dim_1: 1)> array([[1]]) Coordinates: * dim_0 (dim_0) int64 1 * dim_1 (dim_1) <U1 'a' 一起用作转义字符

like

这里是Kx wiki的引文:

"foo**bar" like "foo[*][*]bar"

答案 1 :(得分:0)

现在,您可以将 re2 与 kdb+/q 一起使用。将始终建议为此任务使用一些标准正则表达式,而不是 like