Cookies help us deliver our services. By using our services, you agree to our use of cookies. More information

Difference between revisions of "FIND Tutorial"

From NoSQLZoo
Jump to: navigation, search
m
 
(13 intermediate revisions by 2 users not shown)
Line 13: Line 13:
 
   </p>
 
   </p>
 
   <pre class="def"><nowiki>db.world.find({name: 'France'});</nowiki></pre>
 
   <pre class="def"><nowiki>db.world.find({name: 'France'});</nowiki></pre>
   <pre class="ans"><nowiki>db.world.find({name: 'Germany'});</nowiki></pre>
+
   <pre class="ans"><nowiki>db.world.find({name: 'Germany'}); </nowiki></pre>
 
</div>
 
</div>
  
Line 23: Line 23:
 
   </p>
 
   </p>
 
   <pre class="def"><nowiki>db.world.find({name: 'Germany'}).pretty();</nowiki></pre>
 
   <pre class="def"><nowiki>db.world.find({name: 'Germany'}).pretty();</nowiki></pre>
   <pre class="ans"><nowiki>db.world.find({continent: "Eurasia"}).pretty();</nowiki></pre>
+
   <pre class="ans"><nowiki>db.world.find({continent: "Eurasia"}).pretty(); </nowiki></pre>
 
</div>
 
</div>
  
Line 33: Line 33:
 
   </p>
 
   </p>
 
   <pre class="def"><nowiki>db.world.find({gdp: 3425956000000}).pretty();</nowiki></pre>
 
   <pre class="def"><nowiki>db.world.find({gdp: 3425956000000}).pretty();</nowiki></pre>
   <pre class="ans"><nowiki>db.world.find({area: 43094}).pretty();</nowiki></pre>
+
   <pre class="ans"><nowiki>db.world.find({area: 43094}).pretty(); </nowiki></pre>
 
</div>
 
</div>
  
Line 43: Line 43:
 
   Sort the results alphabetically.
 
   Sort the results alphabetically.
 
</p>
 
</p>
 +
<p>You will need to use a [[FIND_Examples#Using_a_projection_with_find|projection]] to answer this question.</p>
 
<pre class="def"><nowiki>
 
<pre class="def"><nowiki>
 
db.world.find(
 
db.world.find(
Line 55: Line 56:
 
==After S==
 
==After S==
 
<div class="q" data-lang="mongo">
 
<div class="q" data-lang="mongo">
 +
Greater than and less than comparisons can also be applied to strings.
 
   <p class="strong">
 
   <p class="strong">
 
     List the countries that come after "S" in the alphabet.
 
     List the countries that come after "S" in the alphabet.
 
   </p>
 
   </p>
   <pre class="def"><nowiki>db.world.findOne();</nowiki></pre>
+
   <pre class="def"><nowiki>db.world.find();</nowiki></pre>
   <pre class="ans"><nowiki>db.world.find({name:{$gt:"S"}},{name:1,_id:0}).pretty();</nowiki></pre>
+
   <pre class="ans"><nowiki>db.world.find({name:{$gt:"S"}},{name:1,_id:0}).pretty(); </nowiki></pre>
 
</div>
 
</div>
  
Line 86: Line 88:
 
<pre class="ans"><nowiki>db.world.find({$or:[{population:{$gt:200000000}},{population:{$lt:20000}}]},{name:1,population:1,_id:0})</nowiki></pre>
 
<pre class="ans"><nowiki>db.world.find({$or:[{population:{$gt:200000000}},{population:{$lt:20000}}]},{name:1,population:1,_id:0})</nowiki></pre>
 
</div>
 
</div>
 
[https://goo.gl/forms/ep8rBbCQSa381ic82 {{huge| Survey}}] <br/>
 
Do you have thoughts about this website that you would like to share? Help improve NoSQLZoo!
 

Latest revision as of 19:29, 11 December 2020

Working with the world collection of countries

This tutorial introduces NoSQL using MongoDB. We will be using the find() command and comparison functions on the collection world which contains details of around 250 countries of the world:

FIND examples are available.

Show Germany

Use find() to show the details of Germany.

Show Germany instead of France.

db.world.find({name: 'France'});
db.world.find({name: 'Germany'});  

Eurasia

You can use .pretty() to make the output more readable.

List all the countries in the continent of "Eurasia".

db.world.find({name: 'Germany'}).pretty();
db.world.find({continent: "Eurasia"}).pretty(); 

Find an area

You can test numbers as well as strings.

Find the country with an area of exactly 43094.

db.world.find({gdp: 3425956000000}).pretty();
db.world.find({area: 43094}).pretty(); 

Using $gt

You can use $gt (greater than) and $lt (less than) to compare numbers and strings.

Show each country with a population of over 250000000
Sort the results alphabetically.

You will need to use a projection to answer this question.

db.world.find(
  {area: {$gt: 9000000}},
  {name: 1, _id: 0}
).sort(
  {name: 1}
).pretty();
db.world.find({population:{$gt:250000000}},{name:1,_id:0}).sort({name: 1}).pretty();

After S

Greater than and less than comparisons can also be applied to strings.

List the countries that come after "S" in the alphabet.

db.world.find();
db.world.find({name:{$gt:"S"}},{name:1,_id:0}).pretty();  

Name and Capital

Find the name and capital cities for countries with a population of over 70 million.

db.world.findOne();
db.world.find({population:{$gt:70000000}},{name:1,capital:1,_id:0}).pretty();

Using $or

Find the countries that have a population that is over 200 million or less than 20,000.

db.world.find(
  {$or: [
    {name: 'Germany'},
    {name: 'France'}
  ]},
  {name: 1, population: 1, _id: 0}
);
db.world.find({$or:[{population:{$gt:200000000}},{population:{$lt:20000}}]},{name:1,population:1,_id:0})