MySQL - 将两列拆分为两行并分别显示

7

我不知道如何创建这个,如果这是个愚蠢的问题,请原谅。

我有一个包含两个团队和观看总数的表格,我将在另一个地方使用这些信息,所以我的想法是将这两列合并成一列,但分为两行:

HomeTeam      AwayTeam     Totalwatch 
A              B              100
A              C               90
C              A               80
D              B               70
C              E               50

我能做到吗?

Teams          TotalWatch
A                100
B                100
A                 90
C                 90
C                 80
A                 80
D                 70
B                 70
C                 50
E                 50

我有几列数据需要重复显示。

顺便提一下,我知道如何使用concat函数将一行中的数据合并,但我不知道如何在两行中使用它。

3个回答

9
你可以使用 UNION ALLORDER BY Totalwatch DESC 来按照 Totalwatch 排序获取结果。
SELECT HomeTeam AS Teams, Totalwatch  FROM YourTable
UNION ALL
SELECT AwayTeam, Totalwatch FROM YourTable
ORDER BY Totalwatch DESC;

4

只需使用UNION ALL

SELECT * 
FROM(
    SELECT HomeTeam Teams,TotalWatch FROM Your_Table
    UNION ALL
    SELECT AwayTeam,TotalWatch FROM Your_Table
    )D
ORDER BY TotalWatch DESC

2
试试这个吧,兄弟们.. :)
SELECT HomeTeam,Totalwatch
FROM   YourTable

UNION ALL

SELECT AwayTeam,Totalwatch
FROM   YourTable

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接