w3resource

Movies with 'scene' in the title


Retrieve all movies with title, languages, released, directors, writers, countries from the 'movies' collection in MongoDB that have a word "scene" in the title.

Structure of 'movies' collection:

{
    _id: ObjectId("573a1390f29313caabcd42e8"),
plot: 'A group of bandits stage a brazen train hold-up, only to find a determined posse hot on their heels.',
genres: [ 'Short', 'Western' ],
runtime: 11,
cast: [
      'A.C. Abadie',
      "Gilbert M. 'Broncho Billy' Anderson",
      'George Barnes',
      'Justus D. Barnes'
    ],
poster: 'https://m.media-amazon.com/images/M/MV5BMTU3NjE5NzYtYTYyNS00MDVmLWIwYjgtMmYwYWIxZDYyNzU2XkEyXkFqcGdeQXVyNzQzNzQxNzI@._V1_SY1000_SX677_AL_.jpg',
title: 'The Great Train Robbery',
fullplot: "Among the earliest existing films in American cinema - notable as the first film that presented a narrative story to tell - it depicts a group of cowboy outlaws who hold up a train and rob the passengers. They are then pursued by a Sheriff's posse. Several scenes have color included - all hand tinted.",
languages: [ 'English' ],
released: ISODate("1903-12-01T00:00:00.000Z"),
directors: [ 'Edwin S. Porter' ],
rated: 'TV-G',
awards: { wins: 1, nominations: 0, text: '1 win.' },
lastupdated: '2015-08-13 00:27:59.177000000',
year: 1903,
imdb: { rating: 7.4, votes: 9847, id: 439 },
countries: [ 'USA' ],
type: 'movie',
tomatoes: {
viewer: { rating: 3.7, numReviews: 2559, meter: 75 },
fresh: 6,
critic: { rating: 7.6, numReviews: 6, meter: 100 },
rotten: 0,
lastUpdated: ISODate("2015-08-08T19:16:10.000Z")
    }
.....

Query:

db.movies.find(
{ title: { $regex: /scene/i } },
{ title: 1, languages: 1, released: 1, directors: 1, writers: 1, countries: 1 }
)

Output:

{
    _id: ObjectId("573a1390f29313caabcd4135"),
title: 'Blacksmith Scene',
countries: [ 'USA' ],
released: ISODate("1893-05-09T00:00:00.000Z"),
directors: [ 'William K.L. Dickson' ]
  },
  {
    _id: ObjectId("573a1393f29313caabcde453"),
title: 'Scene of the Crime',
languages: [ 'English' ],
released: ISODate("1949-07-28T00:00:00.000Z"),
directors: [ 'Roy Rowland' ],
writers: [ 'John Bartlow Martin (story)', 'Charles Schnee (screenplay)' ],
countries: [ 'USA' ]
  },
  {
    _id: ObjectId("573a1396f29313caabce520d"),
title: 'Scenes from a Marriage',
languages: [ 'Swedish' ],
released: ISODate("1974-09-15T00:00:00.000Z"),
countries: [ 'Sweden' ]
  },
  {
    _id: ObjectId("573a1398f29313caabcea084"),
title: 'Scene of the Crime',
languages: [ 'French' ],
released: ISODate("1987-05-01T00:00:00.000Z"),
directors: [ 'AndrèTèchinè' ],
writers: [ 'AndrèTèchinè', 'Pascal Bonitzer', 'Olivier Assayas' ],
countries: [ 'France' ]
  },
.....

Explanation:

The said query in MongoDB returns movies with the title, languages, released, directors, writers, and countries fields from the 'movies' collection in MongoDB that have the word "scene" in the title.

The $regex operator in the find() method retrieves movies with the word "scene" in the title. The $regex operator is a case-insensitive regular expression that matches the /scene/ pattern represents the word "scene".

The projection object by setting 1 includes the fields title, languages, released, directors, writers, and countries in the result.

Improve this sample solution and post your code through Disqus.

Previous: Movies released on May 9, 1893.
Next: Movies with Viewer Rating between 3 and 4 on Tomatoes.

What is the difficulty level of this exercise?



Become a Patron!

Follow us on Facebook and Twitter for latest update.

It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.

https://www.w3resource.com/mongodb-exercises/mongodb-movies-collection-exercise-14.php