How to bulk upsert

Hi.

It is possible to bulk upsert into a partitioned table. I have tried several of syntax combination and none works.

Ex.

`:2015.12/calls/ upsert (1; 4389; 2015.12.01T07:56:50) // single upsert works

`:2015.12/calls/ upsert (1 2; 4389 4397; 2015.12.01T07:56:50 2015.12.01T07:56:58) // do not work

`:2015.12/calls/ upsert ((1; 4389; 2015.12.01T07:56:50);(2; 4397; 2015.12.01T07:56:58)) // do not work.

Thanks

Hi Neylor,

You need to make your data into a table before upserting to disk:

:2015.12/calls/ upsert flip col1col2col3!(1 2; 4389 4397; 2015.12.01T07:56:50 2015.12.01T07:56:58)

Regards,

Paul

Thanks Paul.

You know how to do it using the java or c# driver? I need to build a giant string or there is a better alternative?

Thanks,

Em quinta-feira, 11 de fevereiro de 2016 17:15:56 UTC-2, Paul Loughran escreveu:

Hi Neylor,

You need to make your data into a table before upserting to disk:

:2015.12/calls/ upsert flip col1col2col3!(1 2; 4389 4397; 2015.12.01T07:56:50 2015.12.01T07:56:58)

Regards,

Paul

Hi Neylor,

There is an document from AquaQ which explains how to interface with C#.

http://www.aquaq.co.uk/wp-content/uploads/2015/01/AquaQ-Analytics-C-to-Kdb±API-document-V1.0.pdf

I think you might be able to use the code from sections 6 and 7 (with some modifications to upsert to disk as opposed to set in memory) to do what you want.

Regards
Paul