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

Chuyển đổi hàng thành cột từ các bảng khác nhau và số hàng khác nhau (liên hợp) trong MySQL phiên bản 8.0.17 bằng cách sử dụng Pivot

Về cơ bản, bạn muốn có một full join , mà MySQL không hỗ trợ. Một phương pháp để xử lý điều này là union all và tổng hợp:

SELECT MAX(CASE WHEN which = 'Q400' THEN contents END) as Q400,
       MAX(CASE WHEN which = 'Q401' THEN contents END) as Q401       
c2.contents Q410
FROM ((SELECT 'Q400' as which, c.*,
              ROW_NUMBER() OVER (ORDER BY sID) as seqnum
       FROM t_contents_q400 c
      ) UNION ALL
      (SELECT 'Q401' as which, c.*,
              ROW_NUMBER() OVER (ORDER BY sID) as seqnum
       FROM t_contents_q401 c
      )
     ) q
GROUP BY seqnum;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Laravel - chèn nhiều hàng và lấy id

  2. Làm thế nào để tự động xóa mỗi x phút?

  3. Giảm thiểu các truy vấn SQL bằng cách sử dụng phép nối với mối quan hệ một-nhiều

  4. CHỌN-ing dữ liệu từ các thủ tục được lưu trữ

  5. MySQL:Lấy tên cột hoặc bí danh từ truy vấn