Administra funciones de bases de datos con el Ejecutor de SQL

SQL Runner proporciona una forma de acceder directamente a tu base de datos y aprovechar ese acceso de varias maneras. Con SQL Runner, puedes navegar fácilmente por las tablas de tu esquema, usar una exploración ad hoc desde una consulta en SQL, ejecutar consultas descriptivas preestablecidas en tus datos, ver tu historial del Ejecutor de SQL, descargar resultados, compartir consultas, agregar elementos a un proyecto de LookML como tabla derivada y realizar otras tareas útiles.

En esta página, se describe cómo modificar el esquema y los datos de tu base de datos con el Ejecutor de SQL, ver el plan de ejecución de tu base de datos para una consulta con la instrucción EXAMINE y cómo usar SQL Runner para obtener información sobre tu base de datos. Consulta estas otras páginas de documentación para obtener información sobre lo siguiente:

Modifica el esquema y los datos de la base de datos

Además de ejecutar consultas en tu base de datos, la pestaña Base de datos en SQL Runner te permite ejecutar declaraciones en lenguaje de definición de datos (DDL) y lenguaje de manipulación de datos (DML) en tu base de datos. Puedes usar SQL Runner para realizar cambios de esquema (como crear, descartar y modificar) y cambios en datos (como insertar, actualizar y borrar). Los dialectos de SQL tienen una compatibilidad variable con las declaraciones DDL y DML, así que consulta la documentación de tu base de datos para descubrir qué declaraciones son compatibles.

Looker no controla la autorización de las instrucciones de SQL que un usuario puede ejecutar en tu base de datos. Los usuarios de Looker con el permiso use_sql_runner tienen acceso al Ejecutor de SQL, pero el Ejecutor de SQL no controla qué comandos puede ejecutar el usuario. Si el administrador de tu base de datos desea evitar que los usuarios del ejecutor de SQL modifiquen el esquema de la base de datos, debe hacerlo configurando los permisos del usuario para la base de datos.

Para ejecutar una declaración DDL o DML en tu base de datos en SQL Runner, sigue estos pasos:

  1. Navega al Ejecutor de SQL.
  2. En SQL Runner, haz clic en la pestaña Database.
  3. Ingresa la declaración DDL o DML en el cuadro Consulta de SQL Runner. (Consulta la documentación del dialecto de tu base de datos para conocer la compatibilidad y sintaxis de declaraciones DDL y DML).
  4. Haz clic en Ejecutar para ejecutar la instrucción en tu base de datos.

Si la instrucción se ejecuta correctamente en tu base de datos, el cuadro Resultados de SQL mostrará una confirmación.

Examinar un plan de ejecución con EXPLAIN

Además de ejecutar consultas de SQL en tu base de datos, puedes usar SQL Runner para ejecutar una función EXPLAIN para una consulta. La función EXPLAIN, compatible con la mayoría de los dialectos de SQL, muestra el plan de ejecución de la base de datos para una consulta.

  1. Desde una exploración, ejecuta una consulta y haz clic en la pestaña SQL del área Datos para ver el comando SQL de la consulta.
  2. En la pestaña SQL de Explorar, haz clic en el botón Explain in SQL Runner.

    Looker abrirá el Ejecutor de SQL y cargará la consulta dentro de una función EXPLAIN.

  3. En el Ejecutor de SQL, haz clic en Ejecutar para ejecutar la función EXPLAIN.

  4. Visualiza el resultado de la función EXPLAIN.

La información y el formato exactos de la respuesta de EXPLAIN dependerán de tu dialecto específico, por lo que deberías consultar la documentación de tu dialecto para obtener información específica.

En el ejemplo anterior de MySQL, la función EXPLAIN muestra una lista de los pasos que realiza la base de datos para completar la consulta. Esto puede ser útil para consultas que parecen ser de ejecución lenta, ya que es posible que tu base de datos esté analizando una tabla completa en una consulta, cuando la tabla podría usar un índice para mejorar el rendimiento.

Si deseas ver un ejemplo paso a paso del uso de EXPLAIN en SQL Runner para optimizar SQL, consulta la publicación de Comunidad Cómo optimizar SQL con EXPLAIN .

Obtén información sobre tu base de datos

La pestaña Base de datos del Ejecutor de SQL tiene muchas herramientas para brindarte estadísticas sobre tu base de datos.

Obtén información de conexión de la base de datos

Cuando eliges una conexión en el Ejecutor de SQL, Looker muestra el dialecto de la base de datos para esa conexión a la derecha del banner CONSULTA DE SQL. Si navegaste al Ejecutor de SQL y eliges Abrir en el Ejecutor de SQL o Explicar en el Ejecutor de SQL, Looker seleccionará de forma previa la conexión adecuada y mostrará el dialecto de la base de datos de la conexión.

Haz clic en el menú de ajustes de conexión para obtener más opciones para la conexión de la base de datos:

  • Selecciona la opción Mostrar procesos para mostrar información sobre las consultas y los procesos que se ejecutan actualmente en la conexión.
  • Selecciona la opción Refresh Schemas & Tables para volver a propagar el panel de navegación izquierdo del Ejecutor de SQL con los esquemas y tablas de la base de datos.

Opciones del menú de ajustes de BigQuery

Cuando eliges una conexión de BigQuery que admite varias bases de datos, Looker muestra opciones específicas de dialectos en el menú de ajustes. El elemento de menú alterna entre Mostrar proyectos disponibles y Buscar proyectos públicos, en función de la opción que esté seleccionada.

  • Selecciona Actualizar esquemas y tablas para volver a propagar el panel de navegación izquierdo del Ejecutor de SQL con los esquemas y las tablas que están en la base de datos.
  • Cuando se muestran los proyectos disponibles, aparece una opción de menú de ajustes para Buscar proyectos públicos. Selecciona esta opción para buscar conjuntos de datos públicos que no están visibles en el esquema de información.
  • Cuando se muestran proyectos públicos, aparece una opción de menú de ajustes para Mostrar proyectos disponibles. Selecciona esta opción para revertir la pantalla a los proyectos y tablas de BigQuery específicos de la conexión en el panel de navegación izquierdo del Ejecutor de SQL.

Busca en tu base de datos

El Ejecutor de SQL muestra un cuadro de búsqueda en el Esquema seleccionado (o Conjunto de datos, para las conexiones de Google BigQuery).

La búsqueda del Ejecutor de SQL explora los nombres de todas las tablas y columnas de tablas que contienen la cadena en el cuadro de búsqueda. En la siguiente imagen, "airport_name" es una columna y "airport_remarks" es una tabla.

Haz clic en uno de los resultados de la búsqueda para navegar a ese elemento en el Ejecutor de SQL.

Obtén información de las tablas

De forma predeterminada, SQL Runner carga previamente toda la información de la tabla cuando seleccionas una conexión y un esquema. En el caso de las conexiones que tienen muchas tablas o tablas muy grandes, un administrador puede inhabilitar este comportamiento anulando la selección de la opción Precache de SQL Runner en la página Conexiones.

El panel de navegación izquierdo del Ejecutor de SQL te permite navegar por los esquemas y las tablas en tus conexiones. Selecciona una conexión y un esquema para ver todas las tablas en ese esquema. Haz clic en el nombre de una tabla para ver los campos que contiene.

SQL Runner tiene algunas consultas predefinidas para ayudarte a comprender tus datos. Para usar estas consultas, haz clic en el ícono de ajustes que aparece junto al nombre de la tabla o columna de la tabla y selecciona la consulta deseada. Looker generará el SQL automáticamente en la sección Consulta de SQL, y se ejecutará la consulta.

Las consultas disponibles variarán según el dialecto de la base de datos.

Información de la tabla

Looker muestra las siguientes opciones cuando haces clic en el ícono de ajustes junto al nombre de una tabla:

  • Explorar tabla: Abre una nueva pestaña del navegador para una Exploración de Looker de la tabla.
  • Describir (Describe): Muestra los nombres de las columnas de la tabla subyacente y sus tipos de datos.
  • Mostrar índices: Muestra información sobre cómo se indexa la tabla.
  • Select 10: Muestra una consulta de las diez primeras filas de la tabla. Esta es una buena manera de tener una idea de cómo se ven los datos en realidad.
  • Count (Recuento): Muestra una consulta count(*) simple para obtener el recuento total de filas de la tabla.

Información de la columna

Haz clic en el nombre de una tabla para ver sus columnas. Looker muestra las siguientes opciones cuando haces clic en el ícono de ajustes junto al nombre de una columna:

  • Más comunes: Muestra una consulta de los valores más comunes para esa columna de la tabla, junto con un recuento de la cantidad de veces que se encuentra ese valor en la columna.
  • Recuento aproximado de valores distintos: Muestra un recuento aproximado de la cantidad de valores distintos que se encuentran en la columna.

Obtén información sobre los tipos de datos de las columnas

Puedes usar el Ejecutor de SQL para obtener información sobre los tipos de datos de las columnas mediante los siguientes pasos:

  1. En el Ejecutor de SQL, selecciona la conexión de la base de datos del menú desplegable Conexión.
  2. Selecciona el esquema en el menú desplegable Esquema. (Para conexiones de BigQuery, selecciona Proyecto y Conjunto de datos).
  3. El Ejecutor de SQL muestra la lista de tablas en ese esquema en tu base de datos. Haz clic en una tabla para ver sus columnas.
  4. Cada nombre de columna tiene un ícono que representa el tipo de datos. Coloca el cursor sobre el nombre de una columna para ver el tipo de datos en esa columna.

Edita las consultas de SQL compiladas previamente

Puedes editar cualquier consulta en SQL en el área Consulta, incluidas las consultas de SQL preestablecidas seleccionadas de la tabla y los menús de ajustes de campo.

Por ejemplo, puedes usar la consulta Count del Ejecutor de SQL para cargar un comando de conteo básico de una base de datos y, luego, editar la consulta en SQL. Por lo tanto, si crees que la columna id de la tabla public.users podría ser una clave primaria, puedes validar que no haya valores duplicados mediante la edición de la consulta de recuento de la siguiente manera:

SELECT id ,COUNT(*)
FROM public.users
GROUP BY 1
ORDER BY 2 DESC
LIMIT 10

Debido a que la consulta está ordenada por la cantidad antes de que los resultados se limiten a 10 filas, los resultados incluirán los valores de recuento más altos. Si esta consulta muestra un recuento de 1 para cada valor de id, es probable que id sea la clave primaria de esta tabla. Sin embargo, esta consulta especifica solo las filas de la tabla en el entorno de ejecución de la consulta. Dado que futuras inserciones en la base de datos pueden descalificar id como clave primaria, recomendamos implementar restricciones en la base de datos para garantizar que las claves primarias sean únicas.