我试图在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")
答案 0 :(得分:3)
因为" - "是一个特殊字符,您需要在转换为符号之前将它们声明为字符串。
where product in `$("TREASURY-NOTE";"TREASURY-BOND";"TREASURY-TIPS")
你也可以使用"喜欢"这允许你使用一些基本的正则表达式:
where product like "TREASURY*"