kasia ka Asked: 2024-09-13 18:42:56 +0800 CST2024-09-13 18:42:56 +0800 CST 2024-09-13 18:42:56 +0800 CST KDB+ DB 维护 772 在我的表中我看到了混合数据类型,我想通过运行 dbmaint 来修复它 我需要确保 eventType 包含一个符号列表,因此任何不匹配的符号都需要针对 db maint 运行,但是我不确定如何做到这一点。使用 fnCol 还是 castCol? kdb 1 个回答 Voted Best Answer rianoc 2024-09-13T19:16:20+08:002024-09-13T19:16:20+08:00 对于混合类型,它并不是简单的转换。 您应该使用:https://github.com/KxSystems/kdb/blob/master/utils/dbmaint.md#fncol 大致如下: 查找所有包含字符串的单元格 将字符串转换为符号 列出符号(假设这是必要的,因为枚举的符号是一个列表,如,输出中所示) 枚举符号列表 fncol[`:/full/path/to/HDB; `table; `eventType;{ @[x; where 10h=type each x; {`:/full/path/to/HDB/sym?enlist `$x}]} ] 在尝试进行此更改之前,请务必备份您的数据。一种选择是使用copycol ,然后fncol对原始数据执行操作。确认数据正确后,您可以deletecol备份列。 首先在小型虚拟 HDB 上进行测试,以确认您的逻辑是正确的
对于混合类型,它并不是简单的转换。
您应该使用:https://github.com/KxSystems/kdb/blob/master/utils/dbmaint.md#fncol
大致如下:
,
输出中所示)在尝试进行此更改之前,请务必备份您的数据。一种选择是使用copycol ,然后
fncol
对原始数据执行操作。确认数据正确后,您可以deletecol备份列。首先在小型虚拟 HDB 上进行测试,以确认您的逻辑是正确的