我有一个数据库中有多个互斥列(不要问我为什么,有人创建它像这样叹息)。下面是它的一个例子。如何组合MySQL中的互斥列
-------------------------------------------
| ID | BLACK | WHITE | RED | GREEN | BLUE |
-------------------------------------------
| 1 | 1 | 0 | 0 | 0 | 0 |
-------------------------------------------
| 2 | 0 | 0 | 1 | 0 | 0 |
-------------------------------------------
| 3 | 0 | 1 | 0 | 0 | 0 |
-------------------------------------------
好吧,你明白了,它包含了数千条记录。现在,我如何将它组合成一个“COLOR”列。如下所示。
--------------
| ID | COLOR |
--------------
| 1 | BLACK |
--------------
| 2 | RED |
--------------
| 3 | WHITE |
--------------
所有我现在能想到的就是做这些
UPDATE table SET COLOR = 'BLACK' WHERE BLACK = 1
哦,我忘了提5,我目前的工作表中包含至少 15个互斥列!有没有更简单的方法可以做到这一点?
编辑
换了颜色颜色
确定一个ID只能有一种颜色?你称之为“COLORS”这一列似乎表明不止一种是可能的。 –
oops。抱歉。它假设是COLOR ..哈哈..在那里感到困惑。 –
如果有任何问题需要正常化。 – Strawberry