🧚 ¡Escucha! Beekeeper Studio es una GUI de base de datos rápida, moderna y de código abierto Descargar
January 17, 2023 Por Matthew Rathbone

A pivot table is a useful tool for summarizing and organizing large amounts of data. In PostgreSQL, you can create a pivot table using the crosstab() function. This function is part of the tablefunc extension, which you will need to enable in your database before using it.

Enable the tablefunc extension

To enable the tablefunc extension, connect to your database using a tool like psql and run the following command:

CREATE EXTENSION tablefunc;

Using crosstab()

Once the extension is enabled, you can use the crosstab() function to create a pivot table. The crosstab() function requires at least three arguments: the name of the pivot table, the SQL query that produces the source data for the pivot table, and the column in the source data that will be used for the pivot table’s rows.

For example, suppose you have a table named sales that contains data about sales transactions, including the date, the product that was sold, and the quantity sold. You could create a pivot table that shows the total quantity sold for each product on each date using the following crosstab() query:

SELECT *
FROM crosstab(
    'SELECT date, product, SUM(quantity)
      FROM sales
      GROUP BY date, product
      ORDER BY date, product',
    'SELECT DISTINCT product FROM sales ORDER BY product'
) AS ct (date text, "Product A" int, "Product B" int, "Product C" int);

This query uses the crosstab() function to create a pivot table named ct, with the date as the rows and the product names as the columns. The crosstab() function takes the results of the inner query, which calculates the total quantity sold for each product on each date, and pivots the data to create the pivot table.

Note that the crosstab() function requires you to specify the names of the columns in the pivot table, which must match the names of the products in the source data. This can be a bit tedious, but it allows you to control the structure of the pivot table and ensure that the data is organized in a useful way.

Once you have created the pivot table, you can use it like any other table in PostgreSQL. You can query it, join it with other tables, and even use it as the source data for another pivot table. Pivot tables are a powerful tool for data analysis, and using them in PostgreSQL can help you quickly summarize and organize large amounts of data. Maybe even turn it into a CTE

Beekeeper Studio Es Una GUI de Base de Datos Gratuita y de Código Abierto

La mejor herramienta de consultas y editor SQL que he usado. Proporciona todo lo que necesito para gestionar mi base de datos. - ⭐⭐⭐⭐⭐ Mit

Beekeeper Studio es rápido, intuitivo y fácil de usar. Beekeeper soporta muchas bases de datos y funciona muy bien en Windows, Mac y Linux.

La versión de Linux de Beekeeper tiene todas las funciones, sin recortes ni compromisos de características.

Lo Que Dicen Los Usuarios Sobre Beekeeper Studio

★★★★★
"Beekeeper Studio reemplazó por completo mi antiguo flujo de trabajo con SQL. Es rápido, intuitivo y hace que trabajar con bases de datos sea agradable de nuevo."
— Alex K., Desarrollador de Bases de Datos
★★★★★
"He probado muchas GUIs de bases de datos, pero Beekeeper logra el equilibrio perfecto entre características y simplicidad. Simplemente funciona."
— Sarah M., Ingeniera Full Stack

¿Listo para Mejorar tu Flujo de Trabajo con SQL?

download Descargar Gratis