如何使记录成为表格标题

Amp*_*nda 2 mysql sql

我有这个表及其数据

----------------------------
| ID | NAME | TYPE | VALUE |
----------------------------
| 1  |  A   | YES  | 10000 |
| 2  |  B   |  NO  |   100 |
| 3  |  A   |  NO  |   300 |
----------------------------
Run Code Online (Sandbox Code Playgroud)

我想知道如何在sql中获取这样的数据:

-----------------------------
| ID | NAME | YES   |   NO  |
-----------------------------
| 1  |  A   | 10000 |   300 |
| 2  |  B   | NULL  |   100 |
-----------------------------
Run Code Online (Sandbox Code Playgroud)

请帮忙

Pரத*_*ீப் 5

您需要透视数据才能执行此操作.

select MIN(ID) as ID, NAME , 
       Max(Case when TYPE = 'Yes' then VALUE END) as `Yes`
       Max(Case when TYPE = 'No' then VALUE END) as `No`
From Yourtable
Group by NAME
Run Code Online (Sandbox Code Playgroud)

注意:这假设列中只有两个可能的值(Yes&No)TYPE.