KDB WHERE 子句列表中带连字符的术语

Hyphenated terms in KDB WHERE clause list

我正在尝试在 KDB WHERE IN 列表中列出带连字符的标准。单个(非连字符)术语工作得很好,但当我需要在文字中使用连字符时,KDB 不喜欢它。我试过在逗号分隔列表中引用字符串,但这似乎也不起作用。

这很好用:

where product in (`CD`MUNICIPAL)

这给了我一个错误:

where product in (`TREASURY-NOTE`TREASURY-BOND`TREASURY-TIPS)

错误:

'TIPS

这就是我正在尝试但没有成功的方法:

where product in ("TREASURY-NOTE","TREASURY-BOND","TREASURY-TIPS")

因为“-”是一个特殊字符,您需要在转换为符号之前将它们声明为字符串。

where product in `$("TREASURY-NOTE";"TREASURY-BOND";"TREASURY-TIPS") 

您还可以使用 "like",它允许您使用一些基本的正则表达式:

where product like "TREASURY*"