Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.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
KDB:如何将表中的列初始化为字符串_Kdb - Fatal编程技术网

KDB:如何将表中的列初始化为字符串

KDB:如何将表中的列初始化为字符串,kdb,Kdb,我注意到,只有在创建了第一个非null/空条目之后,列才会被分配字符串数据类型 meta select AsOfDate from t c t f a AsOfDate 插入记录后: meta select AsOfDate from t c t f a AsOfDate C 是否有更干净的方法将字符串数据类型分配给列?不幸的是,kdb+不允许在创建表期间将列类型定义为列表字符串只是字符列表 您已经正确地注意到,您必须确保您的第一个条目是字符串

我注意到,只有在创建了第一个非null/空条目之后,列才会被分配字符串数据类型

meta select AsOfDate from t
c         t   f  a
AsOfDate 
插入记录后:

meta select AsOfDate from t
c         t   f  a
AsOfDate  C

是否有更干净的方法将字符串数据类型分配给列?

不幸的是,kdb+不允许在创建表期间将列类型定义为列表字符串只是字符列表


您已经正确地注意到,您必须确保您的第一个条目是字符串类型

不幸的是,kdb+不允许在创建表期间将列类型定义为列表列表字符串只是字符列表


您已经正确地注意到,您必须确保您的第一个条目是字符串类型

一些开发人员存储从未使用或访问过的初始化/原型行0。键值是这样的,调用代码将无法获取它。或者某种软删除标志列

一旦表中有了真实的行,您就可以删除原型行,但是逻辑很混乱,如果在表中有数百万行时删除该行,或者该行被持久化到磁盘上,那么成本可能会很高

我希望表的元是粘性的,这样当删除所有行时,它会保留所有类型

q)tbl:([] a:1; b:1.1; c:1#enlist "abc")
q)meta tbl
c| t f a
-| -----
a| j    
b| f    
c| C    
q)meta 1_tbl
c| t f a
-| -----
a| j    
b| f    
c|

一些开发人员存储从未使用或访问的初始化/原型行0。键值是这样的,调用代码将无法获取它。或者某种软删除标志列

一旦表中有了真实的行,您就可以删除原型行,但是逻辑很混乱,如果在表中有数百万行时删除该行,或者该行被持久化到磁盘上,那么成本可能会很高

我希望表的元是粘性的,这样当删除所有行时,它会保留所有类型

q)tbl:([] a:1; b:1.1; c:1#enlist "abc")
q)meta tbl
c| t f a
-| -----
a| j    
b| f    
c| C    
q)meta 1_tbl
c| t f a
-| -----
a| j    
b| f    
c|