¿Te gustaría consultar la base de datos de documentos JSON utilizando una sintaxis similar a SQL? Couchbase tiene N1QL para ti.
N1QL es un lenguaje de consulta declarativo que amplía SQL para JSON. Puede consultar datos a través del marco nativo y la integración del lenguaje, una API fluida o los controladores JDBC/ODBC.
N1QL le permite consultar documentos JSON sin limitaciones - ordenar, filtrar, transformar, agrupar y combinar datos con una sola consulta. Así es. Usted puede combinar datos de varios documentos con un ÚNASE A. ¿El modelo de datos flexible que le prometieron? Aquí lo tiene. Ya no está limitado a los modelos de datos de "tabla única" y "tabla por consulta".
Tutorial N1QL es un gran recurso para aprender los conceptos de consulta de documentos JSON utilizando una sintaxis similar a SQL. Aquí tienes algunos ejemplos:
1 2 3 |
SELECCIONE niños[0].fname AS cnombre DESDE tutorial DONDE fname=Dave |
O
1 2 3 |
SELECCIONE fname, edad, edad/7 AS edad_perro_años DESDE tutorial DONDE fname = Dave |
O
1 2 3 4 |
SELECCIONE relación, CONTAR(*) AS cuente DESDE tutorial GRUPO POR relación TENIENDO CONTAR(*) > 1 |
O
1 2 3 4 5 6 7 8 |
SELECCIONE t.relación, CONTAR(*) AS cuente, AVG(c.edad) AS edad_avg DESDE tutorial t UNNEST t.niños c DONDE c.edad > 10 GRUPO POR t.relación TENIENDO CONTAR(*) > 1 PEDIR POR edad_avg DESC LÍMITE 1 OFFSET 1 |
O
1 2 3 4 5 6 7 8 9 10 11 12 13 |
SELECCIONE producto.nombre, CONTAR(reseñas) AS reviewCount, RONDA(AVG(reseñas.valoración),1) AS AvgRating, categoría DESDE reseñas AS reseñas ÚNASE A producto AS producto EN TECLAS reseñas.productId UNNEST producto.categorías AS categoría DONDE categoría = "Electrodomésticos" GRUPO POR categoría, producto PEDIR POR AvgRating DESC LÍMITE 3 |
¿Estás listo para experimentar con N1QL? Puede utilizar Herramienta CBQ. También puede utilizar Banco de trabajo de consultas Couchbase. El banco de trabajo de consultas proporciona una rica interfaz gráfica de usuario para preparar y ejecutar consultas N1QL de simples a complejas. Proporciona una forma cómoda de realizar el desarrollo de consultas, ya que permite examinar, crear y ejecutar sentencias N1QL, así como ver los resultados.
¿Quiere saber cómo empezar? Descúbrelo todo en esta breve sesión con Eben Haber:
Haga sus preguntas en Stack Overflow o Foros de Couchbase.
También puede seguirnos en @couchbasedev y @couchbase. Que aproveche.