Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Zeilen-zu-Spalten-Transformation aus verschiedenen Tabellen (Union) in MySQL-Version 8.0.17 mit Pivot

In MySQL 8.0+ können Sie dies mit ROW_NUMBER() tun Fensterfunktion in jeder Tabelle, um eine Zeilennummer zu erhalten und die Tabellen darauf zu verbinden:

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

Ich gehe davon aus, dass die 2 Tabellen die gleiche Anzahl von Zeilen haben, wie Ihre Beispieldaten.

Sehen Sie sich die Demo an .