温馨提示×

PostgreSQL中Crosstab查询的语法是什么

小樊
110
2024-08-10 09:41:40
栏目: 云计算

在PostgreSQL中,要执行Crosstab查询,需要使用crosstab()函数。其基本语法如下:

SELECT * FROM crosstab(
    'SELECT category, subcategory, value FROM your_table ORDER BY 1,2',
    'SELECT DISTINCT subcategory FROM your_table ORDER BY 1'
) AS ct(category text, subcategory1 text, subcategory2 text, ..., subcategoryN text);

这里your_table是要查询的数据表,categorysubcategory是数据表中的字段,value是要进行交叉表转换的值。在crosstab()函数中,第一个参数是执行SQL查询获取原始数据的语句,第二个参数是执行SQL查询获取交叉表列名的语句。最后返回的结果是一个交叉表,其中category是原始数据的行标签,subcategory1subcategory2等是原始数据的列标签,对应的值是交叉表中的交汇点的值。

0