簡體   English   中英

DolphinDB 服務器中兩個表的交集

[英]Intersection between two tables in DolphinDB server

我正在嘗試在 DolphinDB 中使用intersection function 如下:

n=1000000
ID=rand(100, n)
dates=2017.08.07..2017.08.11
date=rand(dates, n)
x=rand(10.0, n)
t=table(ID, date, x)
dbDate = database(, VALUE, 2017.08.07..2017.09.11)
dbID = database(, RANGE, 0 50 100)
db = database("dfs://compodb", COMPO, [dbDate, dbID])
pt = db.createPartitionedTable(t, `pt, `date`ID).append!(t)
dfsTable=loadTable("dfs://compodb","pt")

A = select * from dfsTable where date = 2017.08.07
B = select * from dfsTable where date = 2017.08.08
intersection(A[`x],B[`x])

但我收到錯誤:

The both arguments for 'bitAnd'(&) must be integers

顯然有些東西在這個查詢中不起作用......有什么想法嗎?

文檔部分說明了如何創建向量:

  1. 來自表列的向量。 例如,trades.qty 表示交易表中的列 qty。

看起來intersection&的別名,對於向量,它被視為bitAnd ,如此處所述

Arguments

  • 集合操作:X 和 Y 是集合。
  • 位運算:X 和 Y 是大小相等的向量,或者 Y 是標量。

所以你需要將向量轉換為set(A[`x]) function

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM