Converta bancos de dados relacionais e SQL para MongoDB

Índice
Cada banco de dados no MongoDB consiste em coleções que são equivalentes a um RDBMS ou banco de dados relacional que consiste em tabelas SQL. Cada banco de dados armazena os dados coletados na forma de documentos que são equivalentes a tabelas que armazenam dados em linhas.
Enquanto armazena os dados da linha no conjunto de colunas, um documento tem uma estrutura JSON (conhecida como BSON no MongoDB). Por último, a maneira como temos linhas em uma linha SQL, que tem campos no MongoDB.

Equivalentes entre consultas sql e consultas Mondodb
suponha que o banco de dados mysql anterior veremos como mapear e converter as consultas
Crie uma tabela ou coleção
No MongoDB, não há necessidade de criar explicitamente a estrutura da coleção, como fazemos para tabelas com uma consulta CREATE TABLE. A estrutura do documento é criada automaticamente quando ocorre a primeira inserção na coleção. No entanto, você pode criar uma coleção vazia usando o comando createCollection.
Mysql
CRIAR TABELA `clientes` (` id` int (11) NOT NULL AUTO_INCREMENT, `name` varchar (255) NOT NULL,` city` varchar (20) NOT NULL, PRIMARY KEY (`id`))
MongoDB
db.createCollection ("clientes")
Para adicionar registros de dados
MYSQL
INSERT INTO `clientes` (` id`, `nome`,` cidade`) VALORES (NULL, 'Fernan', 'Barcelona');
MongoDB
db.clientes.insert ({nome: "Fernan", cidade: Barcelona "})
Mostrar todos os registros
Mysql
SELECIONE * DE `clientes`
MongoDB
db.clients.find ()
Pesquise um cliente pelo nome
Mysql
SELECT * FROM `clientes` ONDE` nome` = 'Fernan'
MongoDB
db.clientes.find ({nome: "Fernan"})
Agora vamos adicionar mais critérios para recuperar o cliente por nome e cidade. Os campos de critérios especificados por vírgulas representam a condição AND lógica. Portanto, esta declaração buscará documentos que atendam a ambos os critérios.
Mysql
SELECT * `FROM` customers` WHERE` name` = 'Fernan' AND` city` = 'Barcelona'
MongoDB
db.clientes.find ({nome: "Fernan", cidade: "Barcelona"})
Mostrar todos os registros na tabela de clientes classificados em ordem crescente por nome
Mysql
SELECIONE * DE `clientes` ***** por nome ASC
MongoDB
db.clientes.find (). sort ({nome: 1})
Para limitar o número de documentos a serem devolvidos, é usado o método de limite de especificar o número de documentos.
Mysql
SELECIONE * DE `clientes` LIMITE 10
MongoDB
db.clients.find (). limit (10)
Para pular vários registros, a função pular no MongoDB é usada. Por exemplo, a instrução a seguir limita 10 registros e ignora os cinco primeiros.
Mysql
SELECIONE * DE `posts` LIMITE 10 OFFSET 5
MongoDB
db.clients.find (). limit (10) .skip (5)
Para o método de atualização, os critérios de seleção dos documentos são especificados. O primeiro parâmetro é identificar o registro, o segundo parâmetro especifica a operação de atualização real a ser realizada. Por exemplo, a consulta a seguir seleciona todos os documentos chamados Carlos e define sua cidade como Madrid.
Uma diferença aqui é que, por padrão, a consulta de atualização do MongoDB atualiza apenas um registro e a primeira correspondência no documento. Para atualizar todos os documentos correspondentes, temos que oferecer um terceiro parâmetro que especifica múltiplo como verdadeiro, indicando que queremos atualizar vários documentos.
Mysql
ATUALIZAR clientes SET cidade = "Madrid" ONDE nome = 'Carlos'
MongoDB
Atualizar todas as correspondências
db.clientes.update ({name: "Carlos"}, {$ set: {city: "Madrid"}}, {multi: true})
Atualize o primeiro registro correspondente
db.clientes.update ({nome: "Carlos"}, {$ set: {cidade: "Madrid"}})Gostou e ajudou este tutorial?Você pode recompensar o autor pressionando este botão para dar a ele um ponto positivo
wave wave wave wave wave