表meta
的{{1}}如下:
relevantOverrides
我有一个更新查询:
security j
startDate d
endDate d
dataItem s
val f
val列具有浮点类型,但是我需要将更新后的值作为整数插入。
答案 0 :(得分:6)
由于列表属于原子类型,因此无法轻松地将其他类型的数字添加到位。
一种执行所需操作的方法是附加通用null(::)或要更新的类型的值(在这种情况下为长值),这会将您的列表变成混合列表。
然后可以从where子句指定的索引处更新值,然后从列表中删除通用null并进行更新。
q)t
security startDate endDate dataItem val
-------------------------------------------------
2 2011.11.15 2003.11.17 dol 2.310108
8 2015.03.27 2015.01.12 nca 0.8724017
6 2012.06.15 2015.05.03 dfp 1.024432
9 2012.04.15 2001.07.18 hon 8.671096
0 2000.09.02 2009.12.29 ofm 7.278528
q)update val:-1_ @[val,(::);where security=6;:;163390j] from t
security startDate endDate dataItem val
------------------------------------------------
2 2011.11.15 2003.11.17 dol 2.310108
8 2015.03.27 2015.01.12 nca 163390
6 2012.06.15 2015.05.03 dfp 1.024432
9 2012.04.15 2001.07.18 hon 8.671096
0 2000.09.02 2009.12.29 ofm 7.278528
尽管有可能,但在桌面上操作时您可能会遇到困难:
首先,您将无法将结果表另存为磁盘 除了平面以外,没有其他问题
如果您能够解决这个问题,您将获得一个较低的查询 由于列不是向量,因此性能提高。
根据列的需要,更新功能本身将非常昂贵 被修正。