Você gostaria de consultar o banco de dados de documentos JSON usando uma sintaxe semelhante à do SQL? O Couchbase tem N1QL para você.
N1QL é uma linguagem de consulta declarativa que estende o SQL para JSON. Você pode consultar dados por meio da estrutura nativa e da integração da linguagem, de uma API fluente ou dos drivers JDBC/ODBC.
O N1QL permite que você consulte documentos JSON sem nenhuma limitação: classifique, filtre, transforme, agrupe e combine dados com uma única consulta. É isso mesmo. Você pode combinar dados de vários documentos com um JUNTAR. Aquele modelo de dados flexível que lhe foi prometido? É isso mesmo. Você não está mais limitado aos modelos de dados de "tabela única" e "tabela por consulta".
Tutorial N1QL é um ótimo recurso para aprender os conceitos de consulta a documentos JSON usando sintaxe semelhante à do SQL. Aqui estão alguns exemplos:
1 2 3 |
SELECIONAR crianças[0].fname AS cname DE tutorial ONDE fname="Dave |
OU
1 2 3 |
SELECIONAR fname, idade, idade/7 AS idade_dog_anos DE tutorial ONDE fname = "Dave |
OU
1 2 3 4 |
SELECIONAR relação, CONTAGEM(*) AS contagem DE tutorial GRUPO BY relação TER CONTAGEM(*) > 1 |
OU
1 2 3 4 5 6 7 8 |
SELECIONAR t.relação, CONTAGEM(*) AS contagem, AVG(c.idade) AS idade média DE tutorial t INÚTIL t.crianças c ONDE c.idade > 10 GRUPO BY t.relação TER CONTAGEM(*) > 1 ORDEM BY idade média DESC LIMITE 1 DESLOCAMENTO 1 |
OU
1 2 3 4 5 6 7 8 9 10 11 12 13 |
SELECIONAR produto.nome, CONTAGEM(revisões) AS reviewCount, REDONDA(AVG(revisões.classificação),1) AS Classificação média, categoria DE revisões AS revisões JUNTAR produto AS produto ON CHAVES revisões.productId INÚTIL produto.categorias AS categoria ONDE categoria = "Eletrodomésticos" GRUPO BY categoria, produto ORDEM BY Classificação média DESC LIMITE 3 |
Então, você está pronto para experimentar o N1QL? Você certamente pode usar o Ferramenta CBQ. Como alternativa, você pode usar Workbench de consulta do Couchbase. O query workbench oferece uma interface gráfica de usuário avançada para preparar e executar consultas N1QL simples e complexas. Ele oferece uma maneira conveniente de realizar o desenvolvimento de consultas, permitindo que você navegue, crie e execute instruções N1QL e visualize os resultados.
Quer saber como começar? Saiba tudo sobre isso nesta breve sessão com Eben Haber:
Faça suas perguntas em Estouro de pilha ou Fóruns do Couchbase.
Você também pode nos seguir em @couchbasedev e @couchbase. Aproveite!