SQL++ / N1QL Query

How to: Create a copy of your bucket with a single statement with Couchbase Server

Batch data manipulation can be super handy for all sorts of operations. Good news is, DML (data manipulation language) in N1QL provides full support for, not just singleton operations, but for powerful bulk/batch data transformation. Here are a few powerful examples;

– UPDATE can help you add and initialize a new attribute in documents that do not have the last_updated attribute. .

Or break a name attribute into first and last name.

 

– INSERT statement can batch in a few ways. Here is a sample with VALUES.

I also frequently copy my bucket data to other buckets for expimentation using INSERT. INSERT with SELECT moves large sets of data around with a single statement. Here is how to create a copy of bucket_1 under a new name bucket_2.

I also use UPSERT to merge the changes from bucket_1 to bucket_2 as bucket_1 changes.

 

Batch updates and bulk operations can be challenging to code without flexibilities of SQL. N1QL lets you do all that and more with JSON!

You can find more details on DML statements here:

INSERT: http://developer.couchbase.com/documentation/server/4.1/n1ql/n1ql-language-reference/insert.html

UPDATE: http://developer.couchbase.com/documentation/server/4.1/n1ql/n1ql-language-reference/update.html

UPSERT: http://developer.couchbase.com/documentation/server/4.1/n1ql/n1ql-language-reference/upsert.html

MERGE: http://developer.couchbase.com/documentation/server/4.1/n1ql/n1ql-language-reference/merge.html

DELETE: http://developer.couchbase.com/documentation/server/4.1/n1ql/n1ql-language-reference/delete.html

 

Happy testing.

-cihan

Share this article
Get Couchbase blog updates in your inbox
This field is required.

Author

Posted by Cihan Biyikoglu, Director of Product Management, Couchbase

Cihan Biyikoglu is a director of product management at Couchbase, responsible for the Couchbase Server product. Cihan is a big data enthusiast who brings over twenty years of experience to Redis Labs’ product team. Cihan started his career as a C/C++ developer.

Leave a comment

Ready to get Started with Couchbase Capella?

Start building

Check out our developer portal to explore NoSQL, browse resources, and get started with tutorials.

Use Capella free

Get hands-on with Couchbase in just a few clicks. Capella DBaaS is the easiest and fastest way to get started.

Get in touch

Want to learn more about Couchbase offerings? Let us help.