Note: non-SQL nodes are allowed to delete/overwrite both both the incoming and outgoing tables, so do not point them to non-temporary structures. Also they tend to land all columns (losing narrowing optimization), so can be expensive and should be used sparingly. Finally their result can only be used once in a pipeline (else they will try to clobber their own result).
non_sql_node( source, ..., f_db = NULL, f_df = NULL, f_dt = NULL, incoming_table_name, incoming_qualifiers = NULL, outgoing_table_name, outgoing_qualifiers = NULL, columns_produced, display_form = "non_sql_node", orig_columns = TRUE, temporary = TRUE, check_result_details = TRUE, env = parent.frame() )
source | source to work from (data.frame or relop node) |
---|---|
... | force later arguments to bind by name |
f_db | database implementation signature: f_db(db, incoming_table_name, outgoing_table_name, nd, ...) (db being a database handle) |
f_df | data.frame implementation signature: f_df(data.frame, nd) (NULL defaults to taking from database). |
f_dt | data.table implementation signature: f_dt(data.table, nd) (NULL defaults f_df). |
incoming_table_name | character, name of incoming table |
incoming_qualifiers | optional named ordered vector of strings carrying additional db hierarchy terms, such as schema. |
outgoing_table_name | character, name of produced table |
outgoing_qualifiers | optional named ordered vector of strings carrying additional db hierarchy terms, such as schema. |
columns_produced | character, names of additional columns produced |
display_form | character, how to print node |
orig_columns | logical if TRUE select all original columns. |
temporary | logical, if TRUE mark tables temporary. |
check_result_details | logical, if TRUE enforce result type and columns. |
env | environment to look to. |
non-sql node.