img

От А до Я: шпаргалка по MongoDB

21 ноября
20:00
Бесплатный вебинар
Введение в Docker
Ведущий — Филипп Игнатенко.
Руководитель центра разработки
Записаться
img
img

Определения 

  • Что такое MongoDB?

MogoDB – это документоориентированная база данных с необходимыми вам масштабируемостью и гибкостью, запросами и индексированием.

  • Что такое база данных?

База данных содержит набор коллекций. Как правило, база данных имеет отдельный каталог файловой системы, где хранит свои данные. У каждой базы данный свой собственный набор файлов в файловой системе. Согласно общим правилам, одна база данных связывается с одним приложением.

  • Что такое коллекция?

Коллекция – это группа документов. Если предположить, что документ в MongoDB– это аналог строки в таблице реляционной базы данных, то коллекция – это аналог таблицы.

  • Что такое документ?

Запись в MongoDB называется документом. Это структура данных, которая состоит из пар поле-значение. Документы MongoDB напоминают объекты JSON. Значения полей могут содержать другие документы, массивы или массивы документов.  

  • Что такое поле?

У документа имеется динамическая схема. Благодаря таким схемам, документы могут иметь в одной коллекции разные наборы полей и разные имена для общих полей. 

  • Что такое первичный ключ?

В MongoDB для каждого документа, который хранится в коллекции, необходимо указать поле _id, значение которого уникально. Это поле работает по принципу первичного ключа. Если у добавленного документа отсутствует поле _id, драйвер MongoDB автоматически генерирует для поля _id значение типа ObjectId.

  • Для чего нужен NoSQL (нереляционная база данных)?

Нереляционная база данных позволяет добавлять данные, не придерживаясь какой-то заранее определенной схемы. За счет этого свойства такие базы данных идеально подходят для того, чтобы хранить и обрабатывать неструктурированные данные.

  • Для чего нужен MongoDB?

MongoDB – это документоориентированная база данных. Это значит, что она хранит данные в JSON-подобных документах. Считается, что такой способ представления данных -  наиболее естественный. Кроме того, он гораздо более выразительный и функциональный, нежели обычная модель строк и столбцов. 

Команды оболочки MongoDB

  • Просмотр баз данных
show dbs

С помощью этой команды можно просмотреть все базы данных, которые хранятся на сервере MongoDB.

  • Выбор базу данных
use <database_name>

С помощью этой команды можно переключаться между базами данных, чтобы выбрать ту, которую вы хотите использовать.

  • Просмотр коллекций
show collections

С помощью этой команды можно просмотреть все коллекции, которые вы используете в базе данных.

  • Удаление базы данных
db.dropDatabase()

С помощью этой команды можно удалить выбранную базу данных.

  • Создание коллекции
db.createCollection("<collection_name>")

С помощью этой команды можно создать коллекцию в выбранной базе данных.

  • Добавление документа
db.<collection_name>.insertOne({
    <key>: <value>,
    <key>: <value>,
    ...
})

С помощью этой команды можно добавить документ в выбранную коллекцию.

  • Добавление нескольких документов
db.<collection_name>.insertMany([
    {
        <key>: <value>,
        <key>: <value>,
        ...
    },
    {
        <key>: <value>,
        <key>: <value>,
        ...
    },
    ...
])

С помощью этой команды можно добавить несколько документов в выбранную коллекцию.

  • Поиск документов
db.<collection_name>.find()

С помощью это команды можно найти документ в выбранной коллекции.

  • Поиск документов с помощью запроса
db.<collection_name>.find({
    <key>: <value>
})

С помощью этой команды можно найти документ, соответствующий запросу, в выбранной коллекции.

  • Подсчет документов
db.<collection_name>.find({
    <key>: <value>
    }).count()

С помощью этой команды можно подсчитать количество документов в коллекции, которые соответствуют запросу. 

  • Ограничение количества документов
db.<collection_name>.find().limit(<number>)

С помощью этой команды можно ограничить количество документов, возвращаемых командой find.

  • forEach()
db.<collection_name>.find().forEach(function(doc) {
    print("Key: " + doc.<key> + " Value: " + doc.<value>);
})

С помощью этой команды можно пройтись по всем документам в выбранной коллекции и напечатать ключи и значения каждого из них.

  • Поиск одного документа
db.<collection_name>.findOne({
    <key>: <value>
})

С помощью этой команды можно найти первый документ из выбранной коллекции, соответствующих запросу.

  • Обновление документа
db.<collection_name>.updateOne({
    <key>: <value>
}, {
    $set: {
        <key>: <value>
    }
})

С помощью этой команды можно обновить значение первого документа из выбранной коллекции, соответствующего запросу. Для того, чтобы обновить документ, вам понадобиться $set.

  • Увеличение индекса документа
db.<collection_name>.updateOne({
    <key>: <value>
}, {
    $inc: {
        <key>: <value>
    }
})

С помощью этой команды можно увеличить значение ключа первого документа из выбранной коллекции, соответствующего запросу. Для того, чтобы увеличить значение ключа, вам понадобиться $inc.

  • Удаление документа
db.<collection_name>.deleteOne({
    <key>: <value>
})

С помощью этой команды можно удалить первый документ из выбранной коллекции, соответствующий запросу.

  • Добавление нового поля в документ
db.<collection_name>.updateOne({
    <key>: <value>
}, {
    $set: {
        <new_key>: <new_value>
    }
})

С помощью этой команды можно добавить новое поле в первый документ из выбранной коллекции, соответствующий запросу.

  • Больше чем
db.<collection_name>.find({
    <key>: {
        $gt: <value>
    }
})

С помощью этой команды можно найти все документы из выбранной коллекции, чьи ключи больше заданного значения.

  • Больше или равно
db.<collection_name>.find({
    <key>: {
        $gte: <value>
    }
})

С помощью этой команды можно найти все документы из выбранной коллекции, чьи ключи больше или равны заданному значению.

  • Меньше чем
db.<collection_name>.find({
    <key>: {
        $lt: <value>
    }
})

С помощью этой команды можно найти все документы из выбранной коллекции, чьи ключи меньше заданного значения.

  • Меньше или равно
db.<collection_name>.find({
    <key>: {
        $lte: <value>
    }
})

С помощью этой команды можно найти все документы из выбранной коллекции, чьи ключи меньше или равны заданному значению.

  • Не равно
db.<collection_name>.find({
    <key>: {
        $ne: <value>
    }
})

С помощью этой команды можно найти все документы из выбранной коллекции, чьи ключи не равны заданному значению.

  • И
db.<collection_name>.find({
    $and: [
        {
            <key>: <value>
        },
        {
            <key>: <value>
        }
    ]
})

С помощью этой команды можно найти все документы из выбранной коллекции, которые соответствуют запросу.

  • Или
db.<collection_name>.find({
    $or: [
        {
            <key>: <value>
        },
        {
            <key>: <value>
        }
    ]
})

С помощью этой команды можно найти все документы из выбранной коллекции, которые соответствуют запросу.

  • Сортировка
db.<collection_name>.find().sort({
    <key>: <value>
})

С помощью этой команды можно отсортировать по ключу все документы из выбранной коллекции.

  • Сортировка по убыванию
db.<collection_name>.find().sort({
    <key>: -1
})

С помощью этой команды можно отсортировать по убыванию ключей все документы из выбранной коллекции.

  • Удаление коллекции
db.<collection_name>.drop()

С помощью этой команды можно удалить выбранную коллекцию.

Ссылка
скопирована
Получите бесплатные уроки на наших курсах
Все курсы
Программирование
Скидка 25%
Python-программист с нуля
Стань разработчиком на одном из самых популярных языков программирования.
Получи бесплатный
вводный урок!
Пожалуйста, укажите корректный e-mail
отправили вводный урок на твой e-mail!
Получи все материалы в telegram и ускорь обучение!
img
Еще по теме:
img
Гипервизор - это программное обеспечение для виртуализации, используемое для создания и запуска виртуальных машин (ВМ). Гипервиз
img
Виртуализация серверов позволяет запускать несколько виртуальных машин на одном физическом сервере. Запуск виртуальных машин (ВМ
img
Сегодня мы рассмотрим, как настроить и использовать PHP в проекте. Но прежде чем начать, нужно понять, что такое PHP. Что такое
img
Как разработчик, вы знаете, что HTML расшифровывается как HyperText Markup Language (язык разметки гипертекста). HTML — это язык
img
Бесконечные споры вокруг искусственного интеллекта приводят к путанице. Существует много терминов, которые кажутся похожими, но
img
SVG расшифровывается как масштабируемая векторная графика. Это веб-дружелюбный векторный формат файлов, используемый для отображ
21 ноября
20:00
Бесплатный вебинар
Введение в Docker