符号文字中的空格字符

时间:2013-04-02 16:45:28

标签: kdb

我需要查询包含公司名称的数据库。我有大约50个名字的列表,我必须获取数据。但我无法使用in命令编写查询,因为名称中的空格无法识别。前

select from sales where name in (`Coca Cola, `Pepsi)

由于“Cola”未被识别,这给了我一个错误。有没有办法写这样的查询?

2 个答案:

答案 0 :(得分:3)

字符串之间的空格会导致解释器混淆。 `$()将字符列表转换为符号。

q)t:([] a:1 2 3; name:`$("coca cola";"pepsi";"milk"))

q)select from t where name in `$("coca cola";"pepsi")
a name
-----------
1 coca cola
2 pepsi

您可能还需要小心套管,并使用一致的低或大写,否则会导致意外的空结果:

q)select from t where name in `$("Coca Cola";"Pepsi")
a name
------

q)select from t where upper[name] in upper `$("Coca Cola";"Pepsi")
a name
-----------
1 coca cola
2 pepsi

答案 1 :(得分:0)

您需要执行以下操作:

select from sales where name in `$("Coca Cola";"Pepsi")