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

Qubes OS: Fedora 30

Create a new Standalone VM based on fedora-29 VM template Extend root partition: run command on dom0 tuyen@dom0:~ $ qvm-volume extend fedora-30:root 12288MB Set qrexec_timeout to 600 seconds tuyen@dom0:~ $ qvm-pref --set fedora-30 qrexec_timeout 600 $ sudo dnf upgrade --refresh $ sudo dnf install dnf-plugin-sytem-upgrade $ sudo dnf system-upgrade download --release=30 Install fedora-30 template Run the following command on dom0 terminal $ sudo qubes-dom0-update qubes-template-fedora-30 Install Adobe Flash Player Adobe Flash Player will not go away soon. So, let's grab the latest version of Adobe Flash Player , then install using yum or dnf command. Verify if Adobe Flash Player is installed and works by visiting https://helpx.adobe.com/flash-player.html [user@fedora-30 ~]$ sudo dnf install Downloads/flash-player-npapi-32.0.0.238-release.x86_64.rpm Last metadata expiration check: 0:37:03 ago on Fri Aug 30 09:18:10 2019. Dependencies resolved. =========...

How to charge your device from USB Port

First of all, check BIOS Settings of your laptop or desktop Dell Look for USB PowerShare BIOS Settings: USB PowerShare Lenovo Look for Always On USB Charge in Off Mode BIOS Settings: Enable Always On USB Charge in Off Mode

Python: Free Online Courses

Ever thinking about which programming language to learn first? You can learn Python for free with these online courses.