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.
En esta página
Resumen 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 los 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. Después de crear la 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:
Glosario de términos
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:
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. |
DURING | Muestra datos a partir de un momento concreto del pasado. |
COMPARE TO | 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:
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:
A continuación incluimos otro ejemplo de consulta que usa una dimensión de tiempo para mostrar las ventas netas por mes:
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:
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:
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á:
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:
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:
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:
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:
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:
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. |
Filtrar por intervalos de fechas: DURING
La palabra clave DURING simplifica el filtrado de fechas para los intervalos de fechas. Puedes usar la palabra clave DURING para filtrar los resultados de la consulta por un período conocido, como un año calendario o un mes específico, o para los intervalos de fechas que tienen fechas diferentes cada año, como Black Friday Cyber Monday. Por ejemplo:
DURING acepta cualquiera de los siguientes operadores de intervalo de fechas con nombre:
Operador de intervalo de fechas | Uso funcional |
---|---|
hoy | La 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. |
this_week | La semana calendario actual. |
this_month | El mes calendario actual. |
this_quarter | El trimestre calendario actual. |
this_year | El año calendario previo o actual. |
last_week | La semana calendario anterior. |
last_month | El mes calendario anterior. |
last_quarter | El trimestre calendario anterior. |
last_year | Los años calendario previos. |
bfcm2022 | Del 25 de noviembre al 28 de noviembre de 2022. |
bfcm2021 | Del 26 al 29 de noviembre de 2021. |
Comparación entre los intervalos de fechas: COMPARE TO
La palabra clave COMPARE TO te permite comparar los datos en el intervalo de fechas en DURING y en el de COMPARE TO. Acepta cualquiera de los operadores de intervalo de fechas mencionados en la sección DURING . El operador que usa COMPARE TO debe tener la misma duración que la que usó DURING. Por ejemplo, DURING this_week COMPARE TO last_week
es una combinación válida pero DURING this_week COMPARE TO last_month
no lo es.
El siguiente ejemplo compara las ventas netas durante Black Friday Cyber Monday 2022 con Black Friday Cyber Monday 2021.
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 las ventas netas 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.
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.
Limitar
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:
Graficar las consultas: VISUALIZE y TYPE
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:
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 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.
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:
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:
A continuación te mostramos una consulta válida que mezcla campos agregados con funciones agregadas:
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.
Comentarios
Puedes usar comentarios para explicar secciones de declaraciones de ShopifyQL o para evitar la ejecución de una declaración ShopifyQL. Cualquier texto dentro de un comentario se ignorará durante el tiempo de ejecución.
Los comentarios de una sola línea comienzan --
y terminan al final de la línea.
Los comentarios en varias líneas comienzan con /*
y terminan con */
.