Файл: Учебники по русскому языку издательства Дрофа. Сколько записей было отобрано.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 11.12.2023
Просмотров: 1439
Скачиваний: 10
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
Практическая работа № 0.Работа с готовой таблицей
Практическая работа № 16-Access.
Практическая работа № 16-SQLite.
Практическая работа (дополнительная).Язык SQL (многотабличная база данных, OpenOffice Base)
Практическая работа (дополнительная).Язык SQL (многотабличная база данных, MS Access)
$gt – больше, $gte – больше или равно Например, найдем записи с идентификатором больше 2:db.posts.find( {_id: {$gt: 2} } )Сколько документов найдено?Ответ:
Отсортируйте документы по возрастанию датыdb.posts.find().sort( {date: 1} )а теперь по убыванию:db.posts.find().sort( {date: -1} )
Комментариев может быть много, поэтому новое свойство comments будет массивом. Для добавления нового элемента в массив используется специальный объект со свойство $push (англ. втолкнуть):db.posts.update( {_id: 2}, {$push: {comments: "Комментарий 1"} })db.posts.update( {_id: 2}, {$push: {comments: "Комментарий 2"} })db.posts.update( {_id: 2}, {$push: {comments: "Комментарий 3"} })Когда выполняется первая из этих команд, у документа с идентификатором 2 еще нет свойства comments – оно будет создано автоматически.
-
Найдем посты, написанные 24.04.2020 или позднее:
-
Для поиска можно использовать сразу несколько условий. Если все условия нужно выполнить одновременно, их записывают как один объект с несколькими свойствами. Например, следующий запрос находит все документы, у которых свойство «_id» больше 2, а дата создания – не раньше 26.04.2020:
-
Самое мощное средство поиска в MongoDB – это оператор $where, которому можно передать строку в кавычках, задающую условие поиска на JavaScript, например,
-
Составьте запрос для поиска всех документов, у которых свойство _id равно 1 или дата создания равна 26.04.2020.
Сортировка
-
Для сортировки используется функция sort. Она сортирует те документы, которые предварительно найдены с помощью find. При вызове функции sort в скобках указывается порядок сортировки – объект (в фигурных скобках), содержащий название поля для сортировки; значение этого поля может быть 1 (сортировка по возрастанию) или «-1» (по убыванию).
Отсортируйте документы по возрастанию датыdb.posts.find().sort( {date: 1} )а теперь по убыванию:db.posts.find().sort( {date: -1} )
Изменение
-
Для изменения документов используют команду update. Допустим, мы хотим добавить к документу с идентификатором 1 новое логическое свойство visible (англ. видимый) и присвоить ему значение false (ложь), которое означает, что это пост пока скрыт и выводить его на веб-страницу не нужно.
-
Восстановите исходный пост с кодом 1. Какую команду нужно ввести?
-
Для того, чтобы не заменять документ полностью, а изменить (или добавить) значение какого-то поля, нужно использовать специальный объект со свойством $set (установить):
-
Найдите все документы, у которых свойство visible равно false. Какой запрос нужно для этого выполнить?
-
Теперь выполним множественное обновление: установим свойство visible равным true (истина) для всех документов, для которых это свойство не установлено (или, что то же самое, равно специальному нулевому значению null):
-
Составьте запрос для поиска всех документов, у которых свойство visible равно true, а дата создания – не позднее 25.04.2020:
-
Теперь добавим к комментарии к одному из постов (с идентификатором 2). Заметьте, что благодаря документо-ориентированной СУБД заранее планировать наличие комментариев не нужно – мы можем добавлять новые свойства к любому документу «на ходу».
Комментариев может быть много, поэтому новое свойство comments будет массивом. Для добавления нового элемента в массив используется специальный объект со свойство $push (англ. втолкнуть):db.posts.update( {_id: 2}, {$push: {comments: "Комментарий 1"} })db.posts.update( {_id: 2}, {$push: {comments: "Комментарий 2"} })db.posts.update( {_id: 2}, {$push: {comments: "Комментарий 3"} })Когда выполняется первая из этих команд, у документа с идентификатором 2 еще нет свойства comments – оно будет создано автоматически.
-
Все документы с комментариями можно найти с помощью объекта со свойством $exists (существует):
Удаление
-
Как вы уже знаете, для удаления всех документов из коллекции используется команда remove. Запишите команду, которая удаляет все документы из коллекции posts, но не выполняйте её.
-
С помощью команды remove можно удалять отдельные записи – условие для поиска нужных записей задается как параметр функции. Например:
-
Запишите команду для удаления всех документов, у которых свойство visible установлено в false выполните её.
-
С помощью команды drop вся коллекция удаляется из базы. Например,
-
Объясните, в чём отличие между командами remove() и drop().
-
Проверьте, что коллекция posts действительно была удалена. Какую команду нужно для этого использовать?
Дополнительная информация:
-
http://www.mongodb.org – официальный сайт разработки MongoDB. -
http://docs.mongodb.org/manual/installation/ – инструкция по установке MongoDB для разных операционных систем. -
http://jsman.ru/mongo-book/ – русский перевод книги K. Seguin «The Little MongoDB Book».
Установка MongoDB
Windows
-
Скачайте архив с программой со страницы http://www.mongodb.org/downloads -
Распакуйте архив в отдельный каталог в любом месте диска, например, в каталог C:\MongoDB. Внутри этого каталога должен появиться каталог bin, в котором находятся все файлы СУБД. -
Создайте новый каталог, где будут храниться данные. Удобно создать это каталог прямо внутри каталога C:\MongoDB, например, C:\MongoDB\data. -
Создайте в каталоге C:\MongoDB\bin командный файл start.bat с командой запуска серверной части, в параметре dbpath указывается путь к каталогу с базами данных:
-
Создайте (например, на рабочем столе) ярлык на файл C:\MongoDB\bin\start.bat для запуска серверной части. -
Создайте (например, на рабочем столе) ярлык на файл C:\MongoDB\bin\mongo.exe для запуска консоли (оболочки). -
Запустите серверную часть, затем запустите консоль.
Ubuntu
Установка пакета
-
В Терминале введите следующую команду для импорта публичного GPG-ключа (http://docs.mongodb.org/10gen-gpg-key.asc):
-
Создайте файл /etc/apt/sources.list.d/10gen.list и добавьте в него строку для обращения к репозиторию компании 10gen:
-
Перегрузите список репозиториев командой
-
Установите последнюю версию пакета командой
Запуск программы
-
Запустите серверную часть mongod как службу командой
-
Запустите командную оболочку (консоль) командой
-
Простая экспертная система
-
Выберите одну из предложенных тем (или любую другую, которая вам близка) для своей экспертной системы:
-
«Анализ неисправностей компьютера (автомобиля, велосипеда и т.п.)» -
«Подбор комплектующих для нового компьютера» -
«Выбор места отдыха во время отпуска» -
«Выбор места рыбалки в выходные» -
«Выбор материалов для строительства» -
«Определение типа корабля (самолёта, автомобиля)» -
«Автомат, определяющий задуманного артиста (политика, героя мультфильма и т.п.)» -
…