2016-08-04 154 views
0

我想了解加入三個表的MAL語句。我在MAL語句中遇到了bind函數。我有一個表 名爲lineiteml_quantity在裏面。那麼下面的陳述意味着什麼?Monetdb綁定函數參數

  1. (X_94:bat[:oid,:oid], X_95:bat[:oid,:int]) := sql.bind(X_4, "sys", "lineitem", "l_quantity", 2, 0, 4);

  2. (X_96:bat[:oid,:oid], X_97:bat[:oid,:int]) := sql.bind(X_4, "sys", "lineitem", "l_quantity", 2, 1, 4);

什麼是和論點是什麼意思?

回答

0

src/sql/backends/monet5/sql.mal

pattern bind(mvc:int, 
      schema:str, 
      table:str, 
      column:str, 
      access:int, 
      part_nr:int, 
      nr_parts:int) 
    (uid:bat[:oid],uval:bat[:any_1]) 
address mvc_bind_wrap 
comment "Bind the 'schema.table.column' BAT with access kind: 
    0 - base table 
    1 - inserts 
    2 - updates"; 

參數5是訪問類型。在您的示例中,這些說明正在訪問更新列(它們只包含更新,而不包含原始數據)。在後來的計劃,他們將與類型相對應的列被合併0

參數6與參數一起去7.您發佈 結合的4(7參數)的前兩個塊的兩條指令水平分區的列。該分區是否以及如何進行是由mitosisoptimizer動態控制的。