KDB:从每组中选择前 n 行

标签 kdb q-lang

如何从每组中提取前 n 行?例如:对于表 bb: ([]sym:(4#`a),(5#`b);val: 直到 9)

  sym   val
  -------------
  a     0
  a     1
  a     2
  a     3
  b     4
  b     5
  b     6
  b     7
  b     8

如何通过 sym 选择每组的前 2 行?

谢谢

最佳答案

可以使用fby:

q)select from bb where ({x in 2#x};i) fby sym
sym val
-------
a   0
a   1
b   4
b   5

关于KDB:从每组中选择前 n 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33213016/

相关文章:

KDB/Q 内存消耗

python - KDB:如何在 Python 中使用 KDB 函数?

kdb - 同一行同一列的矩阵单元

kdb+/q : Check if argument has been supplied to the function call

database - 如何使用 c.java 库获取 kdb 句柄

java - 使用 JDBC 在 KDB 数据库中执行查询

database - 如何创建具有 2 个不同长度或多个符号列的表的数据库?

kdb q - 在嵌套列表中查找

kdb - 输入列表上的迭代函数 (Q/KDB)

handle - kdb/q : Query multiple handles with hopen