Встановлення локальної MongoDB і основні команди
Встановлення і запуск
Просунуті розробники можуть встановити MongoDB локально на комп'ютер. Скористаємося інструкцією встановлення MongoDB для MacOS.
Якщо на комп'ютері не встановлено Xcode, то потрібно через термінал встановити командний рядок Xcode.
xcode-select --installНа комп'ютері потрібно встановити Homebrew, який дозволяє з командного рядка встановлювати додаткові пакети.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"Тепер через Homebrew потрібно встановити формулу для роботи з MongoDB
brew tap mongodb/brewОновити Homebrew до останньої версії
brew updateВстановити локальну версію MongoDB 6.0 Community Edition.
brew install mongodb-community@6.0Щоб запустити локальну версію MongoDB виконайте таку команду в терміналі.
brew services start mongodb-community@6.0Щоб зупинити MongoDB виконайте таку команду в терміналі
brew services stop mongodb-community@6.0Додаткові налаштування можна перевірити на офіційному сайті MongoDB.
Щоб під'єднатися до локальної версії MongoDB використовуємо таку адресу.

Можна скористатися програмою Compass

Можна під'єднатися і за допомогою програми Robo 3T.

Основні команди MongoDB
mongosh - команда для заходу до MongoDB через термінал

show dbs - Команда, щоб переглянути, які є наразі бази даних в MongoDB.

use - Команда для створення бази даних, або звернення до неї, якщо вже існує. (Якщо бази не було то створить, якщо була то звернеться до неї)

db - Команда, яка покаже в якій базі даних ми перебуваємо
show collections - показати колекції, які є в базі даних. Якщо Колекцій немає, то нічого не покаже.
insertOne - метод додавання одного документа до колекції в базі даних. Перебуваючи в базі даних вказуємо через крапку db потім назву колекції, потім назву метода і в нього передаємо як аргумент обʼєкт який хочемо записати в колекцію.

Як бачимо, згенерувався унікальний _id, структуру якого розглядали раніше. Подивимося через Compass і Robo 3T на структуру нашої бази даних. У базі даних users створилася колекція users, а в ній документ з переданими даними у формі обʼєкта.


insertMany - Метод додавання кількох документів до колекції в базі даних. передають масив обʼєктів. А метод insert може передавати як один, так і кілька документів.


Обмеження щодо використання імен ключів:
Символ $ не може бути першим символом в імені ключа
Ім'я ключа не може містити символ крапки .
Не використовуйте ім'я _id
find - Метод, який робить вибірку із колекції в базі даних за певним параметром. Повертає масив обʼєктів де є збіг. (Якщо не вказати аргумент, то поверне всю колекцію).

Вибірки за умовами. Можна вибірку робити прописуючи умови пошуку. Для цього використовують спеціальні оператори (MongoDB Operators). Наприклад $lt - less than, вибере все менше за вказане число. $gt - greater than, вибере все що більше за вказане число. ($eq - дорівнює, $gte - більше або дорівнює, $lte - менше або дорівнює

Можна, наприклад, вибірку з бази робити використовуючи логічні оператори (наприклад $or для об'єднання вибірок або $and, коли перетинаються вибірки тощо).

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

А якщо навпаки хочемо лишити поля, а всі інші не повертати, то пишемо другим параметром обʼєкт із назвами параметрів і 1 після двокрапки {year: 1}. Тоді в результаті будуть тільки зазначені поля. Поле _id виводиться завжди. його можна прибрати тільки примусово _id: 0.
Якщо всередині документа є поле яке представляє об'єкт, то вибірку і пошук можемо робити через крапку і назву параметра.
limit - обмеження вибірки в межах вказаного числа
skip - Пропускає вказану кількість документів із вибірки
sort - сортування вибірки за певним полем за зростанням (1) або спаданням (-1). наприклад sort({ name: 1 })
count - повертає кількість документів у колекції.
$exists - оператор який включає до вибірки тільки ті документи які містять певне поле
$type - повертає у вибірку тільки ті документи в яких поле є певного типу
$regex - задає регулярний вираз якому має відповідати поле.
Результати вибірки називають курсорами
Вся докладна документація на сайті проєкту MongoDB.
deleteOne, deleteMany - методи видалення одного або документів із колекції, які задовольняють умову.


Також документ із колекції можна видалити методом remove (синтаксис такий само).
updateOne, updateMany - методи оновлення одного або документів із колекції, які задовольняють умову. Першим параметром передають умову, а другим, обʼєкт з полями, які треба оновити.


Покликання:
Last updated