SlideShare uma empresa Scribd logo
MongoDB
INICIANDO COM NOSQL
Agenda
Visão geral sobre bancos de dados
Introdução ao NoSQL
Banco de dados orientado a documento
Introdução ao MongoDB
JSON
Instalação do MongoDB
Primeiros comandos no MogoDB
CRUD
Operadores de Comparação e Lógicos
Exercícios
Operadores de Comparação e Lógicos
Estrutura de controle que segrega itens de acordo com o operador que está usando.
Os operadores de comparação como o próprio nome já diz, verifica dois atributos comparando
seus valores.
Operadores lógicos realizam comparação entre expressões.
Operadores de Comparação e Lógicos
Os operadores de comparação são :
$eq
$gt
$gte
$lt
$lte
$ne
$in
$nin
Operadores de Comparação e Lógicos
Vamos dar uma olhada em nossa collection pessoa
Operadores de Comparação e Lógicos
$eq: Retornas os objetos que tem o valor igual ao especificado.
Sintaxe: {<field> : {$eq: <valor> }
Exemplo: {“age” : {$eq : 20} }
Operadores de Comparação e Lógicos
Ficar escrevendo em uma linha toda a nossa query pode ficar ruim com o tempo.Então, vamos
criar uma variável para receber nossa query de operação
> var query = {“age” : {$eq : 20}}
Operadores de Comparação e Lógicos
$gt: Retornas os objetos que tem o valor maior ao especificado.
Sintaxe: {<field> : {$gt: <valor> }
Exemplo: {“age” : {$gt : 20} }
Operadores de Comparação e Lógicos
$gte: Retornas os objetos que tem o valor maior ou igual ao especificado.
Sintaxe: {<field> : {$gte: <valor> }
Exemplo: {“age” : {$gte : 20} }
Operadores de Comparação e Lógicos
$lt: Retornas os objetos que tem o valor menor que ao especificado.
Sintaxe: {<field> : {$lt: <valor> }
Exemplo: {“age” : {$lt : 20} }
Operadores de Comparação e Lógicos
$lte: Retornas os objetos que tem o valor menor igual que ao especificado.
Sintaxe: {<field> : {$lte: <valor> }
Exemplo: {“age” : {$lte : 20} }
Operadores de Comparação e Lógicos
$ne: Retornas os objetos com valor diferentes ao especificado.
Sintaxe: {<field> : {$ne: <valor> }
Exemplo: {“age” : {$ne : 28} }
Operadores de Comparação e Lógicos
$ne: Retornas os objetos que tem o valor dentre os especificados no array.
Sintaxe: {<field> : {$in: [valor, valor1] }
Exemplo: {“age” : {$in : [28,20]} }
Operadores de Comparação e Lógicos
$nin: Retornas os objetos que não tem o valor dentre os especificados no array.
Sintaxe: {<field> : {$nin: [valor, valor1]}
Exemplo: {“age” : {$in : [28,20]} }
Hora de praticar
Operadores de Comparação e Lógicos
Adicione cinco novas pessoas.
Busque todas as pessoas com idade maior que 30
Busque todas as pessoas com idade menor ou igual a 30
Busque todas as pessoas com idade menor que 23
Busque todas as pessoas com idades iguais a 20, 21, 22, 23, 24,25
Operadores de Comparação e Lógicos
Os operadores lógicos são :
$or
$and
$not
$nor
$exists
$text
Operadores de Comparação e Lógicos
$or: Executa a comparação de duas expressões ou mais e retorna os objetos que cumpram com
ao menos uma destas.
Sintaxe: {$or : [ <expressao1>, <expressao2>, <expressao3>]}
Exemplo: {$or : [
{“name” : {$eq : “Gabriel Alves Scavassa”} } ,
{“name” : {$eq : “João Paulo”} }
]}
Operadores de Comparação e Lógicos
$or: Executa a comparação de duas expressões ou mais e retorna os objetos que cumpram com
ao menos uma destas.
Operadores de Comparação e Lógicos
$and: Executa a comparação de duas expressões ou mais e retorna os objetos que cumpram
com todas elas.
Sintaxe: {$and : [ <expressao1>, <expressao2>, <expressao3> ]}
Exemplo: {$and : [
{“name” : {$eq : “Gabriel Alves Scavassa”} } ,
{“age” : {$eq :28 }}
]}
Operadores de Comparação e Lógicos
$and: Executa a comparação de duas expressões ou mais e retorna os objetos que cumpram
com todas elas.
Operadores de Comparação e Lógicos
$not: Retorna os objetos que não compreendem as expressões.
Sintaxe: {<field>: { $not : {<operator> : <valor>} } }
Exemplo: {“age”: { $not : {$gte : 20} } }
Operadores de Comparação e Lógicos
$nor: Retornas todos os objetos que não estão de acordo com as expressões no array.
Sintaxe: { $nor : [{expressão}, {expressão1} ] }
Exemplo: {$nor : [ { "age" : 20}, {"age" : 28} ] }
Operadores de Comparação e Lógicos
$exists: Junta clausulas e retornas todos os documentos que não estão de acordo com .
Sintaxe: { <field>: { $exists : < true || false> } }
Exemplo: {city: { $exists : true} }
Operadores de Comparação e Lógicos
$text: Realiza busca textual no campo especificado.
Sintaxe: { $text: { $search: "coffee" } }
Exemplo: {$text: { $search : ‘Gabriel’} }
Operadores de Comparação e Lógicos
Para o comando de pesquisa por texto, nós precisamos criar um index com o campo de texto que
faremos a pesquisa.
Sintaxe: db.pessoas.createindex( { name : “text” } )
Operadores de Comparação e Lógicos
$text: Realiza busca textual no campo especificado.
Sintaxe: { $text: { $search: "coffee" } }
Exemplo: { $text: { $search : ‘Gabriel’} }
Operadores de Comparação e Lógicos
Para buscar partes de uma palavre, usaremos o próprio find().
> db.pessoas.find({"name" : /G/})
Fazemos o pipe para separar a letra. Por padrão está como Case Sensitive.
.
Operadores de Comparação e Lógicos
> db.pessoas.find( { “name” : /G/i})
Assim tornamos a pesquisa como Case Insensitive.
Contatos
gabriel.scavassa@outlook.com
@g_scavassa
/j-ew-s
Obrigado !
SlideShare.net/gscavassa

Mais conteúdo relacionado

Mais procurados

Lambdas and Streams Master Class Part 2
Lambdas and Streams Master Class Part 2Lambdas and Streams Master Class Part 2
Lambdas and Streams Master Class Part 2
José Paumard
 
07 html formulários
07 html   formulários07 html   formulários
07 html formulários
Centro Paula Souza
 
Estrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na práticaEstrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na prática
Leinylson Fontinele
 
Lambda and Stream Master class - part 1
Lambda and Stream Master class - part 1Lambda and Stream Master class - part 1
Lambda and Stream Master class - part 1
José Paumard
 
Java - Primeiros passos
Java - Primeiros passosJava - Primeiros passos
Java - Primeiros passos
Professor José de Assis
 
Aula10 sql-ddl
Aula10 sql-ddlAula10 sql-ddl
Aula10 sql-ddl
Rafael Albani
 
Functor, Apply, Applicative And Monad
Functor, Apply, Applicative And MonadFunctor, Apply, Applicative And Monad
Functor, Apply, Applicative And Monad
Oliver Daff
 
Java orientação a objetos (associacao, composicao, agregacao)
Java   orientação a objetos (associacao, composicao, agregacao)Java   orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)Armando Daniel
 
Apresentação Projeto Banco de Dados MER
Apresentação Projeto Banco de Dados MERApresentação Projeto Banco de Dados MER
Apresentação Projeto Banco de Dados MER
Davi Rodrigues
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a Objetos
Igor Takenami
 
Java 10 Classes Abstratas Interfaces
Java 10 Classes Abstratas InterfacesJava 10 Classes Abstratas Interfaces
Java 10 Classes Abstratas InterfacesRegis Magalhães
 
PostgreSQL and PL/Java
PostgreSQL and PL/JavaPostgreSQL and PL/Java
PostgreSQL and PL/Java
Peter Eisentraut
 
Fundamento de poo en php
Fundamento de poo en phpFundamento de poo en php
Fundamento de poo en php
Robert Moreira
 
Banco de dados - Aula 1 SQL
Banco de dados - Aula 1 SQLBanco de dados - Aula 1 SQL
Banco de dados - Aula 1 SQL
Daniel Brandão
 
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)
Daniel Brandão
 
Greenfoot 6
Greenfoot 6Greenfoot 6
Greenfoot 6
Christian Medina
 

Mais procurados (20)

Lambdas and Streams Master Class Part 2
Lambdas and Streams Master Class Part 2Lambdas and Streams Master Class Part 2
Lambdas and Streams Master Class Part 2
 
07 html formulários
07 html   formulários07 html   formulários
07 html formulários
 
Estrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na práticaEstrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na prática
 
Lambda and Stream Master class - part 1
Lambda and Stream Master class - part 1Lambda and Stream Master class - part 1
Lambda and Stream Master class - part 1
 
Java - Primeiros passos
Java - Primeiros passosJava - Primeiros passos
Java - Primeiros passos
 
Diagramas de componentes
Diagramas de componentesDiagramas de componentes
Diagramas de componentes
 
Aula10 sql-ddl
Aula10 sql-ddlAula10 sql-ddl
Aula10 sql-ddl
 
Functor, Apply, Applicative And Monad
Functor, Apply, Applicative And MonadFunctor, Apply, Applicative And Monad
Functor, Apply, Applicative And Monad
 
Design Patterns
Design PatternsDesign Patterns
Design Patterns
 
Estrutura de dados - Pilhas
Estrutura de dados - PilhasEstrutura de dados - Pilhas
Estrutura de dados - Pilhas
 
Java orientação a objetos (associacao, composicao, agregacao)
Java   orientação a objetos (associacao, composicao, agregacao)Java   orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)
 
Apresentação Projeto Banco de Dados MER
Apresentação Projeto Banco de Dados MERApresentação Projeto Banco de Dados MER
Apresentação Projeto Banco de Dados MER
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a Objetos
 
Java 10 Classes Abstratas Interfaces
Java 10 Classes Abstratas InterfacesJava 10 Classes Abstratas Interfaces
Java 10 Classes Abstratas Interfaces
 
PostgreSQL and PL/Java
PostgreSQL and PL/JavaPostgreSQL and PL/Java
PostgreSQL and PL/Java
 
Fundamento de poo en php
Fundamento de poo en phpFundamento de poo en php
Fundamento de poo en php
 
Banco de dados - Aula 1 SQL
Banco de dados - Aula 1 SQLBanco de dados - Aula 1 SQL
Banco de dados - Aula 1 SQL
 
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)
 
Estrutura de Dados em Java (Introdução)
Estrutura de Dados em Java (Introdução)Estrutura de Dados em Java (Introdução)
Estrutura de Dados em Java (Introdução)
 
Greenfoot 6
Greenfoot 6Greenfoot 6
Greenfoot 6
 

Destaque

#3 Instalação MongoDB
#3   Instalação MongoDB  #3   Instalação MongoDB
#3 Instalação MongoDB
Gabriel Alves Scavassa
 
#2 JSON Overview
#2   JSON Overview #2   JSON Overview
#2 JSON Overview
Gabriel Alves Scavassa
 
Scrum - evolução contínua
Scrum - evolução contínuaScrum - evolução contínua
Scrum - evolução contínua
Gabriel Alves Scavassa
 
Modelando aplicação em documento - MongoDB
Modelando aplicação em documento - MongoDBModelando aplicação em documento - MongoDB
Modelando aplicação em documento - MongoDBThiago Avelino
 
No sql Orientado a documento
No sql Orientado a documentoNo sql Orientado a documento
No sql Orientado a documento
Alex Martins
 
#1 Introdução ao MongoDB
#1   Introdução ao MongoDB#1   Introdução ao MongoDB
#1 Introdução ao MongoDB
Gabriel Alves Scavassa
 
#4 Primeiros comandos no MongoDB
#4   Primeiros comandos no MongoDB#4   Primeiros comandos no MongoDB
#4 Primeiros comandos no MongoDB
Gabriel Alves Scavassa
 

Destaque (7)

#3 Instalação MongoDB
#3   Instalação MongoDB  #3   Instalação MongoDB
#3 Instalação MongoDB
 
#2 JSON Overview
#2   JSON Overview #2   JSON Overview
#2 JSON Overview
 
Scrum - evolução contínua
Scrum - evolução contínuaScrum - evolução contínua
Scrum - evolução contínua
 
Modelando aplicação em documento - MongoDB
Modelando aplicação em documento - MongoDBModelando aplicação em documento - MongoDB
Modelando aplicação em documento - MongoDB
 
No sql Orientado a documento
No sql Orientado a documentoNo sql Orientado a documento
No sql Orientado a documento
 
#1 Introdução ao MongoDB
#1   Introdução ao MongoDB#1   Introdução ao MongoDB
#1 Introdução ao MongoDB
 
#4 Primeiros comandos no MongoDB
#4   Primeiros comandos no MongoDB#4   Primeiros comandos no MongoDB
#4 Primeiros comandos no MongoDB
 

Semelhante a #6 Operadores de Comparação e Lógicos no MongoDB

Programação funcional com java 8
Programação funcional com java 8Programação funcional com java 8
Programação funcional com java 8
Leonardo Neuwald
 
Programação Funcional com Java 8
Programação Funcional com Java 8Programação Funcional com Java 8
Programação Funcional com Java 8
Cristian R. Silva
 
MongoDB - Iniciando e Conhecendo
MongoDB - Iniciando e ConhecendoMongoDB - Iniciando e Conhecendo
MongoDB - Iniciando e Conhecendo
Edemilson Gonçalves
 
Javascript tutorial
Javascript tutorialJavascript tutorial
Javascript tutorial
Jose De Almeida Batista
 
Consultas SQL
Consultas SQLConsultas SQL
Consultas SQL
Alexandre Silva
 
Eeep aderson borges phpmysql 20112020 operadores em php
Eeep aderson borges phpmysql 20112020 operadores em phpEeep aderson borges phpmysql 20112020 operadores em php
Eeep aderson borges phpmysql 20112020 operadores em php
Eliane Oliveira
 
Regex
RegexRegex
Regex
dcarneir
 
721
721721
Collection Java (2/2)
Collection Java (2/2)Collection Java (2/2)
Collection Java (2/2)
rdgse
 
Coleções Propriedade, Resources e Strings
Coleções Propriedade, Resources e StringsColeções Propriedade, Resources e Strings
Coleções Propriedade, Resources e StringsDenis L Presciliano
 
Angular JS - Fundamentos
Angular JS - FundamentosAngular JS - Fundamentos
Angular JS - Fundamentos
Eduardo Mendes
 
BD I - Aula 08 A - Algebra Relacional
BD I - Aula 08 A - Algebra RelacionalBD I - Aula 08 A - Algebra Relacional
BD I - Aula 08 A - Algebra Relacional
Rodrigo Kiyoshi Saito
 
aula2_algebra_calculo.pdf
aula2_algebra_calculo.pdfaula2_algebra_calculo.pdf
aula2_algebra_calculo.pdf
Leonardo Neves
 

Semelhante a #6 Operadores de Comparação e Lógicos no MongoDB (14)

Programação funcional com java 8
Programação funcional com java 8Programação funcional com java 8
Programação funcional com java 8
 
Programação Funcional com Java 8
Programação Funcional com Java 8Programação Funcional com Java 8
Programação Funcional com Java 8
 
MongoDB - Iniciando e Conhecendo
MongoDB - Iniciando e ConhecendoMongoDB - Iniciando e Conhecendo
MongoDB - Iniciando e Conhecendo
 
Javascript tutorial
Javascript tutorialJavascript tutorial
Javascript tutorial
 
Consultas SQL
Consultas SQLConsultas SQL
Consultas SQL
 
Eeep aderson borges phpmysql 20112020 operadores em php
Eeep aderson borges phpmysql 20112020 operadores em phpEeep aderson borges phpmysql 20112020 operadores em php
Eeep aderson borges phpmysql 20112020 operadores em php
 
Regex
RegexRegex
Regex
 
721
721721
721
 
Collection Java (2/2)
Collection Java (2/2)Collection Java (2/2)
Collection Java (2/2)
 
Java 14
Java 14Java 14
Java 14
 
Coleções Propriedade, Resources e Strings
Coleções Propriedade, Resources e StringsColeções Propriedade, Resources e Strings
Coleções Propriedade, Resources e Strings
 
Angular JS - Fundamentos
Angular JS - FundamentosAngular JS - Fundamentos
Angular JS - Fundamentos
 
BD I - Aula 08 A - Algebra Relacional
BD I - Aula 08 A - Algebra RelacionalBD I - Aula 08 A - Algebra Relacional
BD I - Aula 08 A - Algebra Relacional
 
aula2_algebra_calculo.pdf
aula2_algebra_calculo.pdfaula2_algebra_calculo.pdf
aula2_algebra_calculo.pdf
 

#6 Operadores de Comparação e Lógicos no MongoDB

  • 2. Agenda Visão geral sobre bancos de dados Introdução ao NoSQL Banco de dados orientado a documento Introdução ao MongoDB JSON Instalação do MongoDB Primeiros comandos no MogoDB CRUD Operadores de Comparação e Lógicos Exercícios
  • 3. Operadores de Comparação e Lógicos Estrutura de controle que segrega itens de acordo com o operador que está usando. Os operadores de comparação como o próprio nome já diz, verifica dois atributos comparando seus valores. Operadores lógicos realizam comparação entre expressões.
  • 4. Operadores de Comparação e Lógicos Os operadores de comparação são : $eq $gt $gte $lt $lte $ne $in $nin
  • 5. Operadores de Comparação e Lógicos Vamos dar uma olhada em nossa collection pessoa
  • 6. Operadores de Comparação e Lógicos $eq: Retornas os objetos que tem o valor igual ao especificado. Sintaxe: {<field> : {$eq: <valor> } Exemplo: {“age” : {$eq : 20} }
  • 7. Operadores de Comparação e Lógicos Ficar escrevendo em uma linha toda a nossa query pode ficar ruim com o tempo.Então, vamos criar uma variável para receber nossa query de operação > var query = {“age” : {$eq : 20}}
  • 8. Operadores de Comparação e Lógicos $gt: Retornas os objetos que tem o valor maior ao especificado. Sintaxe: {<field> : {$gt: <valor> } Exemplo: {“age” : {$gt : 20} }
  • 9. Operadores de Comparação e Lógicos $gte: Retornas os objetos que tem o valor maior ou igual ao especificado. Sintaxe: {<field> : {$gte: <valor> } Exemplo: {“age” : {$gte : 20} }
  • 10. Operadores de Comparação e Lógicos $lt: Retornas os objetos que tem o valor menor que ao especificado. Sintaxe: {<field> : {$lt: <valor> } Exemplo: {“age” : {$lt : 20} }
  • 11. Operadores de Comparação e Lógicos $lte: Retornas os objetos que tem o valor menor igual que ao especificado. Sintaxe: {<field> : {$lte: <valor> } Exemplo: {“age” : {$lte : 20} }
  • 12. Operadores de Comparação e Lógicos $ne: Retornas os objetos com valor diferentes ao especificado. Sintaxe: {<field> : {$ne: <valor> } Exemplo: {“age” : {$ne : 28} }
  • 13. Operadores de Comparação e Lógicos $ne: Retornas os objetos que tem o valor dentre os especificados no array. Sintaxe: {<field> : {$in: [valor, valor1] } Exemplo: {“age” : {$in : [28,20]} }
  • 14. Operadores de Comparação e Lógicos $nin: Retornas os objetos que não tem o valor dentre os especificados no array. Sintaxe: {<field> : {$nin: [valor, valor1]} Exemplo: {“age” : {$in : [28,20]} }
  • 16. Operadores de Comparação e Lógicos Adicione cinco novas pessoas. Busque todas as pessoas com idade maior que 30 Busque todas as pessoas com idade menor ou igual a 30 Busque todas as pessoas com idade menor que 23 Busque todas as pessoas com idades iguais a 20, 21, 22, 23, 24,25
  • 17. Operadores de Comparação e Lógicos Os operadores lógicos são : $or $and $not $nor $exists $text
  • 18. Operadores de Comparação e Lógicos $or: Executa a comparação de duas expressões ou mais e retorna os objetos que cumpram com ao menos uma destas. Sintaxe: {$or : [ <expressao1>, <expressao2>, <expressao3>]} Exemplo: {$or : [ {“name” : {$eq : “Gabriel Alves Scavassa”} } , {“name” : {$eq : “João Paulo”} } ]}
  • 19. Operadores de Comparação e Lógicos $or: Executa a comparação de duas expressões ou mais e retorna os objetos que cumpram com ao menos uma destas.
  • 20. Operadores de Comparação e Lógicos $and: Executa a comparação de duas expressões ou mais e retorna os objetos que cumpram com todas elas. Sintaxe: {$and : [ <expressao1>, <expressao2>, <expressao3> ]} Exemplo: {$and : [ {“name” : {$eq : “Gabriel Alves Scavassa”} } , {“age” : {$eq :28 }} ]}
  • 21. Operadores de Comparação e Lógicos $and: Executa a comparação de duas expressões ou mais e retorna os objetos que cumpram com todas elas.
  • 22. Operadores de Comparação e Lógicos $not: Retorna os objetos que não compreendem as expressões. Sintaxe: {<field>: { $not : {<operator> : <valor>} } } Exemplo: {“age”: { $not : {$gte : 20} } }
  • 23. Operadores de Comparação e Lógicos $nor: Retornas todos os objetos que não estão de acordo com as expressões no array. Sintaxe: { $nor : [{expressão}, {expressão1} ] } Exemplo: {$nor : [ { "age" : 20}, {"age" : 28} ] }
  • 24. Operadores de Comparação e Lógicos $exists: Junta clausulas e retornas todos os documentos que não estão de acordo com . Sintaxe: { <field>: { $exists : < true || false> } } Exemplo: {city: { $exists : true} }
  • 25. Operadores de Comparação e Lógicos $text: Realiza busca textual no campo especificado. Sintaxe: { $text: { $search: "coffee" } } Exemplo: {$text: { $search : ‘Gabriel’} }
  • 26. Operadores de Comparação e Lógicos Para o comando de pesquisa por texto, nós precisamos criar um index com o campo de texto que faremos a pesquisa. Sintaxe: db.pessoas.createindex( { name : “text” } )
  • 27. Operadores de Comparação e Lógicos $text: Realiza busca textual no campo especificado. Sintaxe: { $text: { $search: "coffee" } } Exemplo: { $text: { $search : ‘Gabriel’} }
  • 28. Operadores de Comparação e Lógicos Para buscar partes de uma palavre, usaremos o próprio find(). > db.pessoas.find({"name" : /G/}) Fazemos o pipe para separar a letra. Por padrão está como Case Sensitive. .
  • 29. Operadores de Comparação e Lógicos > db.pessoas.find( { “name” : /G/i}) Assim tornamos a pesquisa como Case Insensitive.