Usar ShopifyQL en Notebooks

ShopifyQL es el lenguaje de consulta de Shopify creado para el comercio. Los lenguajes de consulta se usan para solicitar y recuperar datos de las bases de datos. Puedes usar ShopifyQL con la aplicación Notebooks de Shopify para explorar la base de datos de tu negocio y recuperar los datos que te den una idea más detallada de tu negocio.

Para ver una lista completa de los valores y dimensiones disponibles que se pueden usar en las consultas de ShopifyQL Notebook, consulta el esquema de pedidos y el esquema de productos.

Información general de ShopifyQL

Los datos de tu tienda se almacenan en tablas de bases de datos, estructuradas en columnas y filas definidas. Las columnas determinan el tipo de información que contienen, como las ventas, y las filas especifican el valor real del tipo de datos, como USD 2450 en ventas.

Para recuperar tus datos en un formato comprensible, se debe enviar una consulta a la base de datos. Las consultas son preguntas que solicitan datos específicos como respuesta. Un lenguaje de consulta, como ShopifyQL, es una forma estandarizada de construir esa pregunta. Las consultas están formadas por palabras clave y sus parámetros correspondientes. La combinación de varias palabras clave con parámetros específicos crea la consulta. Una vez que hayas creado tu consulta, puedes ejecutarla y recibir una respuesta.

A continuación te mostramos un ejemplo de sintaxis de ShopifyQL, redactada a modo de consulta. Las palabras clave están en negrita y sus parámetros correspondientes están entre corchetes. Los parámetros que se muestran aquí son marcadores de posición:

**FROM**{ table_name }**SHOW** { column1, column2, ... }**GROUP BY**{ dimension | date_group }**WHERE**{ condition }**SINCE**{ date_offset }**UNTIL**{ date_offset }**ORDER BY**{ column } DESC**LIMIT**{ count }

Glosario de términos

Definiciones de términos de ShopifyQL
Término Definición
Dimensión Un atributo que segmenta los datos para que puedan ordenarse y presentarse más claramente. Algunos ejemplos comunes de dimensiones son la hora, los productos y los lugares. Las dimensiones se usan como parámetros en ShopifyQL.
Palabra clave Sintaxis de ShopifyQL que actúa como un comando para dirigir tu consulta.
Métrica Una medición cuantitativa de datos. Algunos ejemplos comunes de métricas son las ventas totales, la cantidad de pedidos y las ganancias brutas.
Parámetro Sintaxis de ShopifyQL que identifica los elementos o detalles de la base de datos que se deben incluir en tu consulta.

Tabla de referencia de palabras clave

Estas son las palabras clave que puedes usar para escribir tu consulta:

Lista de palabras clave de ShopifyQL
Palabra clave Uso funcional
FROM Especifica de qué tabla de conjunto de datos deseas seleccionar la información.
SHOW Selecciona las columnas que deseas extraer de la tabla de conjunto de datos.
VISUALIZE Muestra los datos en una visualización en forma de líneas o de barras.
GROUP BY Agrupa los datos extraídos por una dimensión o por dimensiones de tiempo.
WHERE Define la condición o las condiciones que deben cumplir las filas para que se seleccionen.
SINCE Muestra datos a partir de un momento concreto del pasado.
UNTIL Muestra datos hasta un momento concreto del pasado.
ORDER BY Especifica en función de qué columna ordenar los datos.
LIMIT Limita el número de filas de datos que se muestran.
AS Cambia el nombre de una columna por el nombre que elijas.

Escribir consultas de ShopifyQL

Las consultas de ShopifyQL pueden requerir desde información útil sobre datos de alto nivel hasta información completa y detallada. Cada palabra clave tiene una función específica que sirve para crear tu consulta.

Conceptos básicos de ShopifyQL: FROM y SHOW

Para crear la consulta más sencilla con ShopifyQL, solo se requieren dos palabras clave: FROM y SHOW, escritas en ese orden. FROM, seguido de un parámetro de nombre de tabla, especifica qué tabla deseas consultar. SHOW, seguido de un parámetro de nombre de columna, especifica las columnas que deseas seleccionar.

Por ejemplo, puedes enumerar todas las identificaciones de productos y sus nombres correspondientes de la tabla de ventas escribiendo esta consulta:

**FROM**products**SHOW**product_id, product_title

Agrupar datos: GROUP BY

Para segmentar una métrica por dimensión, como ventas agrupadas por región, usa la palabra clave GROUP BY. La palabra clave GROUP BY se puede emparejar con cualquier parámetro de dimensión.

Por ejemplo, una consulta que agrupe los precios de envío por país y región de facturación se escribe del siguiente modo:

**FROM**orders**SHOW**shipping**GROUP BY**billing_country, billing_region

A continuación incluimos otro ejemplo de consulta que usa una dimensión de tiempo para mostrar las ventas netas por mes:

**FROM**orders**SHOW**net_sales**GROUP BY**month

La consulta anterior no mostrará los meses en los que no hayas tenido ninguna venta. De modo que, si deseas formular una consulta que devuelva un período completo e ininterrumpido, usa el modificador ALL:

**FROM**orders**SHOW**net_sales**GROUP BY**month ALL**SINCE**last_year**UNTIL**today

Si usas el modificador ALL, también debes especificar SINCE y UNTIL. Ten en cuenta que el modificador ALL solo funciona con la dimensión de tiempo.

Dimensiones de tiempo

Estas son las dimensiones de tiempo que puedes usar para agrupar tus datos:

Dimensiones del tiempo de ShopifyQL
Operador Uso funcional
hour Agrupar por hora de día calendario.
day Agrupar por día calendario.
week Agrupar por semana calendario.
mes Agrupar por mes calendario.
quarter Agrupar por trimestre calendario.
year Agrupar por año calendario.
hour_of_day Agrupar por 24 horas (1, 2... 24).
day_of_week Agrupar por día de la semana (Lu, Ma, Mi... Do).
week_of_year Agrupar por semana del año (1, 2... 52).

Filtrar datos: WHERE

La palabra clave WHERE te permite aplicar un filtro dimensional a toda una consulta de ShopifyQL.

Por ejemplo, si deseas obtener las ventas netas agrupadas por mes, pero solo de una región específica, tu consulta será:

**FROM**orders**SHOW**net_sales**GROUP BY**month ALL**WHERE**billing_region = 'ohio'**SINCE**last_year**UNTIL**today

Como puedes ver en el ejemplo anterior, puedes filtrar el resultado establecido con el parámetro WHERE incluso si ese parámetro no está incluido en las palabras clave SHOW o GROUP BY. En este caso, las ventas netas se filtran en todos los meses para los pedidos con una dirección de facturación solo en Ohio, aunque billing_region no se incluya en el conjunto de resultados.

Operadores relacionales

La palabra clave WHERE usa operadores relacionales para filtrar los datos. En el ejemplo anterior, se usó "=" para especificar que la consulta se filtra en un valor determinado. Sin embargo, hay otros operadores disponibles:

Operadores relacionales de ShopifyQL
Operador relacional Uso funcional
= igual a
!= no igual a
< menor que
> mayor que
<= menor que o igual a
>= mayor que o igual a

Operadores lógicos

Para filtrar aún más la información, puedes agregar operadores lógicos a tu consulta. Los operadores lógicos de ShopifyQL son:

Operadores lógicos de ShopifyQL
Operador lógico Uso funcional
AND Filtra para mostrar todas las filas donde se cumplan las condiciones separadas por AND.
OR Filtra para mostrar todas las filas donde se cumpla alguna de las condiciones separadas por OR.
NOT Filtra para mostrar solo las filas donde no se cumplan las condiciones, como las filas que no contienen el valor especificado.

Puedes usar varios filtros con la palabra clave WHERE agregando operadores lógicos.

Siguiendo con el ejemplo de la consulta sobre el conjunto de datos, para obtener una agrupación por mes de las ventas netas para todos los pedidos en los que la dirección de facturación estaba en Ohio y se aplicó un descuento, la consulta es:

**FROM**orders**SHOW**net_sales**GROUP BY**month ALL**WHERE**billing_region = 'ohio' AND discounts > 0**SINCE**last_year**UNTIL**today

Intervalo de fechas: SINCE y UNTIL

Si deseas filtrar tu consulta por una fecha o algún período de tiempo, puedes usar las palabras clave SINCE y UNTIL, y sus parámetros asociados. Estas palabras clave son únicas porque solo filtran períodos.

Por ejemplo, veamos una consulta para encontrar las ventas netas durante los últimos 12 meses en Canadá, hasta el día de hoy:

**FROM**orders**SHOW**net_sales**GROUP BY**month ALL**WHERE**billing_country = 'Canada'**SINCE**-12m**UNTIL**today

Operadores de intervalos de tiempo

Puedes filtrar por fechas específicas o por intervalos de fechas. Los operadores de intervalos de tiempo de ShopifyQL son los siguientes:

Operadores de intervalos de tiempo de ShopifyQL
Operador de intervalos de tiempo Uso funcional
-{#}d Número de días desde el día en que se ejecuta la consulta.
-{#}w Número de semanas transcurridas desde el día en que se ejecuta la consulta.
-{#}m Número de meses transcurridos desde el día en que se ejecuta la consulta.
-{#}q Número de trimestres transcurridos desde el día en que se ejecuta la consulta.
-{#}y Número de años transcurridos desde el día en que se ejecuta la consulta.
aaaa-mm-dd Una fecha específica.
hoy Fecha en que se ejecuta la consulta.
ayer El período previo de 24 horas que transcurre desde el momento en que se ejecuta la consulta.

Ordenar datos: ORDER BY

Puedes especificar cómo deseas ordenar los datos que obtengas con tu consulta usando la palabra clave ORDER BY y sus parámetros: ASC para el orden ascendente y DESC para el orden descendente.

En la palabra clave ORDER BY puedes especificar cualquier métrica o dimensión que incluyas en tu consulta, incluidos varios campos.

Por ejemplo, esta consulta devuelve la suma de las ventas para cada país y región de facturación, ordenada por orden alfabético inverso por país de facturación y luego por región de facturación dentro de cada país.

**FROM**orders**SHOW**net_sales**GROUP BY**billing_country, billing_region**SINCE**-1y**UNTIL**today**ORDER BY**billing_country, billing_region DESC

El orden en el que escribes tus métricas o dimensiones es importante. Si especificas varios valores para ORDER BY, la clasificación se aplicará a cada métrica o dimensión en el pedido dado.


Límite

La palabra clave LIMIT te permite especificar cuántas filas devuelve la consulta. Esto resulta útil cuando simplemente deseas observar la apariencia de los datos en cada columna. También puedes combinarla con ORDER BY para crear listas superiores e inferiores.

Este ejemplo usa LIMIT y ORDER BY para crear una lista con los diez productos más vendidos por cantidad de los últimos tres meses:

**FROM**products**SHOW**net_product_quantity**GROUP BY**product_title**SINCE**-3m**UNTIL**today**ORDER BY**net_product_quantity DESC**LIMIT**10

Gráfica de tus consultas: VISUALIZAR y TIPO

La palabra clave VISUALIZE te permite escribir una consulta de ShopifyQL que muestre los datos en una visualización en forma de líneas o de barras.

La palabra clave TIPO es opcional y debe ir acompañada de "línea" o "barra" para que la consulta devuelva una visualización a modo de gráfico de líneas o de gráfico de barras, respectivamente. Si TIPO no se incluye en la consulta, ShopifyQL decide automáticamente cuál es la visualización más adecuada. Si tu consulta no puede visualizarse como texto escrito, ShopifyQL mostrará datos tabulares.

Por ejemplo, puedes visualizar la tendencia que han experimentado tus ventas por mes en el último año con una línea de tendencia. La consulta siguiente dará como resultado un gráfico de serie cronológica con las ventas brutas por mes en el último año. Las ventas brutas se representarán en una sola línea, con el eje "X" etiquetado como mes y el "Y" etiquetado como ventas totales:

**FROM**orders**VISUALIZE**gross_sales**TYPE**line**GROUP BY**month ALL**SINCE**-1y**UNTIL**today

Operadores matemáticos

ShopifyQL permite realizar operaciones aritméticas con las métricas de tus datos. Los siguientes operadores matemáticos están disponibles:

Operadores de intervalos de tiempo de ShopifyQL
Operadores matemáticos Uso funcional
+ Suma de dos números.
- Resta de dos números.
* Multiplicación de dos números.
/ División de dos números.

Por ejemplo, la siguiente consulta calcula el valor de los pedidos en cada región durante el último año. Cuando usas operadores matemáticos con métricas, puedes emplear la palabra clave AS para asignar un nombre nuevo a la nueva métrica.

**FROM**orders**SHOW**(net_sales + returns) AS order_value, orders, (net_sales + returns)/orders AS sales_per_order**GROUP BY**billing_region**SINCE**-1y**UNTIL**today

Funciones

Las funciones de ShopifyQL te permiten agregar columnas similares a las tablas dinámicas en Microsoft Excel. Esto significa combinarlas para crear un valor nuevo. Los siguientes operadores de funciones están disponibles en la versión actual de ShopifyQL:

Operadores de intervalos de tiempo de ShopifyQL
Operador de funciones Uso funcional
count() Recuento de instancias en el conjunto de resultados.
sum() Suma de valores en el conjunto de resultados.
min() Valor mínimo en el conjunto de resultados.
max() Valor máximo en el conjunto de resultados.
avg() Valor promedio en el resultado establecido.

Las funciones sum, min, max y avg solo se pueden usar con valores numéricos, mientras que count pueden usarse para contabilizar diferentes casos de atributos dimensionales. No puedes usar campos agregados como argumentos en las funciones. Los campos agregados terminan en _sum, _count o _percent.

Por ejemplo, la siguiente consulta devolverá un error, ya que ventas_totales ya es un valor agregado:

**FROM**orders**SHOW**sum(total_sales)

A continuación te mostramos una consulta válida que mezcla campos agregados con funciones agregadas:

**FROM**orders**SHOW**average_order_value, sum(gross_sales)**GROUP BY**billing_region**SINCE**2021-01-01**UNTIL**2021-12-31

Esta consulta devuelve la suma agregada del valor promedio de los pedidos y la suma bruta de ventas como resultado de la función sum. Estas métricas se desglosan por región de facturación para todos los pedidos realizados en 2021.

¿Estás listo/a para comenzar a vender con Shopify?

Prueba gratis