Skip to main content

MongoDB: CRUD

CRUD - Create Read Update Delete

CRUD stands for Create Read Update Delete. Those are fundamental operations used to manipulate data stored in any type of database, SQL and NoSQL.

We must first take a look at some basic commands with database and collection before diving in CRUD documents.

Show all databses

show dbs
or with anyone going from MySQL, use the following command but without semicolon at the end
show databases

Check current database

db

Change database

use <databasename>

Show colletions in a database

show collections

Create Collection

Create a new "myMovies" collection in "movieScratch" database.

Create a new collection using mongo shell

Insert documents

Insert many documents unordered

db.<CollectionName>.insertMany(
[
 {
  "key1": "value11"
  "key2": "value12"
 },
 {
  "key1": "value21"
  "key2": "value22"
 }
],
{
 ordered: false
}
)
MongoDB: Insert many documents unordered

Take a look at the result: The third document cannot be inserted due to duplicated key error with the first document.

MongoDB: Insert many documents unordered result

Read documents

Read all documents in a collection with find()

db.<CollectionName>.find()

Count all documents in a document with count()

db.<CollectionName>.count()

Count and filter specific documents in a collection.

MongoDB: Read documents in a collection with find()

Find movies that rated as "PG" and have exactly 10 nominations in "movieDetails" collection of "movie" database.

db.movieDetails.find({"rated":"PG","awards.nominations":10})
MongoDB: Yet another example of find and filter documents in a collection

To be continued...

Let's learn by blogging, it REALLY takes our times but it is worth it, at least for me.

Popular posts from this blog

Linux command: top

NAME        top - display Linux processes SYNOPSIS        top -hv|-bcHiOSs -d secs -n max -u|U user -p pid -o fld -w [cols]        The traditional switches `-' and whitespace are optional. DESCRIPTION        The  top program provides a dynamic real-time view of a running system.  It can display        system summary information as well as a list of processes or  threads  currently  being        managed  by  the  Linux  kernel.  The types of system summary information shown and the        types, order and size of information displayed for processes are all user  configurable        and that configuration can be made persistent across restarts.        The  program  provides a limited interactive interface for process manipulation ...

Linux command: tail

tail - output the last part of files

Linux command: printenv

printenv - print all or part of environment NAME        printenv - print all or part of environment SYNOPSIS        printenv [OPTION]... [VARIABLE]... DESCRIPTION        Print  the  values  of the specified environment VARIABLE(s).  If no VARIABLE is speci‐        fied, print name and value pairs for them all.        -0, --null               end each output line with NUL, not newline        --help display this help and exit        --version               output version information and exit        NOTE: your shell may have its own version of printenv,  which  usually  supersedes  the        version  described  here.  Please refer to your shell's documentation for d...