Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
List 在表的列表列中查找键的位置_List_Kdb_Q Lang - Fatal编程技术网

List 在表的列表列中查找键的位置

List 在表的列表列中查找键的位置,list,kdb,q-lang,List,Kdb,Q Lang,我有一个表,其中一列keyname为int,另一列keylist为list为int。我正在尝试以以下方式创建另一列,该列位于我的表中keylist中的keyname位置: update keypos:{y?x} . (keyname;keylist) from tableName 或 这两种方法都会产生keypos,其值=表的大小 非常感谢您的任何见解。谢谢阿卡什。这很有效。你能解释一下为什么在非表设置下需要同时使用这两种方法吗?这是因为表列是以列表的形式实现的,这使得两者都是合适的。在非表用

我有一个表,其中一列
keyname
int
,另一列
keylist
list
int
。我正在尝试以以下方式创建另一列,该列位于我的表中
keylist
中的
keyname
位置:

update keypos:{y?x} . (keyname;keylist) from tableName

这两种方法都会产生
keypos
,其值=表的大小


非常感谢您的任何见解。

谢谢阿卡什。这很有效。你能解释一下为什么在非表设置下需要同时使用这两种方法吗?这是因为表列是以列表的形式实现的,这使得两者都是合适的。在非表用法中,keypos是标量。所以keypos实际上是一个int列表,keylist是一个intsThanks@JamesLittleThanks-Akash列表。这很有效。你能解释一下为什么在非表设置下需要同时使用这两种方法吗?这是因为表列是以列表的形式实现的,这使得两者都是合适的。在非表用法中,keypos是标量。因此,keypos实际上是一个int列表,keylist是一个intsThanks@jameslittle列表它返回“表的大小”的原因是因为您正在对列表列表中的整个keyname列表执行单个查找。但是整个keyname列表不在列表列表中,因此它返回越界索引(恰好等于表的计数)。然后,Kdb将该单个原子转换为向量,使其成为有效列。我认为您要做的是在每个列表中查找每个键名。这就解释了为什么需要使用each tweet hanks@terrylysynch返回“表的大小”的原因是因为您正在将整个keyname列表单独查找到列表列表中。但是整个keyname列表不在列表列表中,因此它返回越界索引(恰好等于表的计数)。然后,Kdb将该单个原子转换为向量,使其成为有效列。我认为您要做的是在每个列表中查找每个键名。这就解释了为什么需要一个两者都有的hanks@terrylynch
update keypos:keylist?'keyname from tableName
update keypos:keylist?'keyname from tableName