У меня есть таблица с одной из колонн keyname
быть int
и еще один столбец keylist
быть list
из int
. Я пытаюсь создать еще один столбец, который является положение keyname
в keylist
в моей таблице в следующем порядке:Поиск положение ключа в списке столбцов таблицы
update keypos:{y?x} . (keyname;keylist) from tableName
ИЛИ
update keypos:{{x?1}(y=x)} . (keyname;keylist) from tableName
Оба эти результата в keypos
со значением = размер таблицы.
Любое понимание очень ценится.
Причина, по которой он возвращает «размер таблицы», заключается в том, что вы выполняете единый поиск всего списка имен ключей в списке списков. Но весь список ключей не входит в список списков, и поэтому он возвращает индекс out-of-bounds (который, таким образом, равен счету таблицы). Затем Kdb преобразует этот единственный атом в вектор, чтобы сделать его допустимым столбцом. Я думаю, что вы пытаетесь сделать поиск * каждого * ключевого слова в * каждый * список. Это объясняет, почему каждый из них необходим. – terrylynch
Спасибо @terrylynch – Rahul