PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Sự cố bảng chéo / trục PostgreSQL

Trường hợp thử nghiệm (cách ưu tiên để cung cấp dữ liệu mẫu):

CREATE TEMP TABLE prefs (pref_id int, pref_name text, pref_value text);

INSERT INTO prefs VALUES 
 (1, 'PagerNumber' , '2125551234')
,(2, 'PagerCarrier', '@att.com')
,(3, 'PagerCarrier', '@something.com');

Truy vấn:

SELECT *
FROM   crosstab(
       'SELECT pref_id, pref_name, pref_value
        FROM   prefs
        ORDER  BY 1, 2',

       $$VALUES ('PagerNumber'::text), ('PagerCarrier')$$
       )
AS x (section text, pager_number bigint, pager_carrier text);

Trả về chính xác kết quả được mô tả trong câu hỏi của bạn. Nếu một PagerNumber có thể là một cái gì đó khác ngoài bigint hợp lệ số, sử dụng text thay vào đó.

Câu trả lời bạn đang đề cập đến trong câu hỏi của bạn đã lỗi thời và không bao giờ chính xác để bắt đầu. Tôi đã thêm một câu trả lời thích hợp kèm theo giải thích và liên kết ở đó.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cơ sở dữ liệu postgres không tồn tại Docker-compo v3

  2. Cách thích hợp để chú thích một trường xếp hạng cho một bộ truy vấn

  3. GROUP hoặc DISTINCT sau khi JOIN trả về các bản sao

  4. Cố gắng xây dựng Truy vấn PostgreSQL để trích xuất từ ​​JSON một giá trị văn bản trong một đối tượng, trong một mảng, trong một đối tượng, trong một mảng, trong một đối tượng

  5. Sự cố khi đặt khóa chính tùy chỉnh trong quá trình di chuyển Rails 4