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 (liên hợp) trong MySQL phiên bản 8.0.17 bằng cách sử dụng Pivot

Trong MySQL 8.0+, bạn có thể làm điều đó với ROW_NUMBER() chức năng cửa sổ trong mỗi bảng để lấy số hàng và nối các bảng trên đó:

WITH 
  cte1 AS (SELECT *, ROW_NUMBER() OVER (ORDER BY sID) rn FROM t_contents_q400),
  cte2 AS (SELECT *, ROW_NUMBER() OVER (ORDER BY sID) rn FROM t_contents_q410)
SELECT c1.contents Q400, c2.contents Q410
FROM cte1 c1 INNER JOIN cte2 c2
ON c2.rn = c1.rn

Tôi giả định rằng 2 bảng có cùng số hàng, giống như dữ liệu mẫu của bạn.

Xem bản trình diễn .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sự khác biệt giữa MySQL, MySQLi và PDO là gì?

  2. Cách kiểm tra Ci đã chèn dữ liệu thành công hay chưa

  3. Cách hàm UPPER () hoạt động trong MySQL

  4. nodeJS trả về giá trị từ callback

  5. Làm cách nào để ngăn Hibernate + c3p0 + MySql tạo ra số lượng lớn các kết nối đang ngủ?