🧚 Atenção! Beekeeper Studio é uma GUI de banco de dados rápida, moderna e de código aberto Download
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 É Uma GUI de Banco de Dados Gratuita e de Código Aberto

A melhor ferramenta de consultas SQL e editor que já usei. Fornece tudo que preciso para gerenciar meu banco de dados. - ⭐⭐⭐⭐⭐ Mit

Beekeeper Studio é rápido, intuitivo e fácil de usar. Beekeeper suporta muitos bancos de dados e funciona muito bem no Windows, Mac e Linux.

A versão Linux do Beekeeper é 100% completa, sem cortes e sem compromissos de recursos.

O Que Os Usuários Dizem Sobre o Beekeeper Studio

★★★★★
"O Beekeeper Studio substituiu completamente meu antigo fluxo de trabalho com SQL. É rápido, intuitivo e torna o trabalho com banco de dados agradável novamente."
— Alex K., Desenvolvedor de Banco de Dados
★★★★★
"Já experimentei muitas GUIs de banco de dados, mas o Beekeeper encontra o equilíbrio perfeito entre recursos e simplicidade. Simplesmente funciona."
— Sarah M., Engenheira Full Stack

Pronto para Melhorar seu Fluxo de Trabalho com SQL?

download Download Gratuito