Строка в kdb определяется как список символов, поэтому функции, использующие их, должны иметь возможность справиться с этим.
q)count "test"
4
Вы также можете использовать символ вместо приведения из строки, используя `symbol$"test"
. Символ является атомарным и имеет фиксированную ширину, поэтому его можно использовать в качестве ключей для словаря или таблицы. Некоторые функции для строк по-прежнему будут работать с символами, например
q)upper `test
`TEST
пока операция со списком не будет работать, и вам придется превратить ее обратно в строку, используя string `test
перед использованием этих операций.
Когда выдается ошибка длины, и вы переходите в режим отладки, как показано в приглашении q с двумя скобками q))
, вы можете использовать функции .z.ex
, чтобы показать сбойную функцию, и .z.ey
, чтобы увидеть сбой аргументы, чтобы сузить, какая часть выдает ошибку.