Consultas

Consultas

October 11, 2019

Mientras escribimos scripts de SQL o investigamos el contenido de una conexión a base de datos, necesitaremos sabe cuál es el contenido de nuestras tablas.

Para ello, podemos escribir consultas SQL y visualizar el resultado en la ventana de consultas.

Para abrir una ventana de consultas, podemos utilizar tanto la opción de menú Archivo | Nuevo | Consulta o el botón Consulta de la barra de herramientas, esto nos abrirá una ventana de consulta como la que vemos al inicio de este artículo.

También podemos pulsar dos veces sobre una tabla en la lista de conexiones para abrir una consulta sobre esa tabla:

Consulta sobre una tabla
Consulta sobre una tabla

En la parte superior de esta ventana se encuentra el cuadro de edición donde escribiremos la consulta, la barra de herramientas colocada en la parte inferior nos permite seleccionar la conexión sobre la que ejecutamos la consulta y el botón de ejecutar:

Barra de herramientas de consulta
Barra de herramientas de consulta

Nota: Observe que hay dos botones de ejecución en la aplicación, uno en la ventana de consulta y otro en la barra de herramientas principal. El botón de la barra de herramientas principal nos permite ejecutar scripts de SQL y scripts de ETL, pero no las consultas de esta ventana. Para ejecutar consultas debemos utilizar su propia barra de herramientas. La razón principal es que la ejecución de scripts SQL o ETL puede tardar mucho tiempo y mientras tanto podremos seguir ejecutando en la ventana de consultas sin necesidad de detener otros procesos.

Cuando pulsamos el botón de ejecutar, veremos el resultado de la consulta en el grid inferior:

Visualización de resultados
Visualización de resultados consulta

Junto al botón de ejecutar, vemos un botón etiquetado como Plan de ejecución, cuando lo pulsemos, veremos en el cuadro de texto de la ficha Plan de ejecución el plan que va a ejecutar el servidor de base de datos para obtener el resultado de la consulta:

Plan de ejecución
Plan de ejecución de una consulta

La última ficha nos permite visualizar un gráfico básico de la consulta (esta opción aún esta en desarrollo, por ahora es algo limitada):

Gráfico
Gráfico de una consulta

Además, el botón de Guardar nos permite guardar el resultado de la consulta en un archivo CSV o parquet mientras que el botón de Paginar consulta lanzará automáticamente consultas paginadas sobre el servidor.

Las consultas que escribamos en esta ventana, utilizan el mismo archivo de parámetros que los scripts SQL, es decir, podemos utilizar los valores de los parámetros y constantes de los archivos de parámetros en esta ventana.

Por ejemplo, podemos escribir esta consulta sobre una conexión a SqLite:

SELECT [Orders].[OrderID], [Orders].[CustomerID], [Orders].[EmployeeID], [Orders].[OrderDate], 
		[Orders].[RequiredDate], [Orders].[ShippedDate], [Orders].[ShipVia], 
		[Orders].[Freight], [Orders].[ShipName], [Orders].[ShipAddress], [Orders].[ShipCity], 
		[Orders].[ShipRegion], [Orders].[ShipPostalCode], [Orders].[ShipCountry]
	FROM [Orders]
	WHERE OrderDate > @StartDate

Donde StartDate está definida en nuestro archivo de parámetros como:

{
	"StartDate": "1970-01-01"
}

El resultado que obtenemos en este caso será:

Resultado de una consulta
Resultado de una consulta con parámetros sobre SqLite

Por último, para facilitar la escritura de consultas:

  • Si arrastramos y soltamos una tabla desde las conexiones al editor de consultas se escribirá el nombre de la tabla.
  • Si arrastramos y soltamos una tabla desde las conexiones al editor de consultas mientras mantenemos pulsada la tecla de mayúsculas, se escribirá en la consulta el nombre de la tabla y todos sus campos.

Del mismo modo que en la ventana de edición de scripts, si seleccionamos un bloque de código, se ejecutará una consulta sólo sobre el bloque seleccionado.