MYSQL触发器从垂直创建水平表

时间:2018-11-16 10:17:07

标签: mysql triggers

我有一个具有这种垂直结构的桌子。数据来自外部公司,所以我已经处理了。

+----+-----------+------+--------+
| id | status_id | key  | value  |
+----+-----------+------+--------+
|  1 |       100 | key1 | value1 |
|  2 |       100 | key2 | value2 |
|  3 |       100 | key3 | value3 |
|  4 |       200 | key1 | value1 |
|  5 |       200 | key2 | value2 |
|  6 |       200 | key3 | value3 |
+----+-----------+------+--------+

现在,我想在插入后使用触发器从此数据创建一个水平表,以便我成为该结构。.

+-----------+--------+--------+--------+
| status_id |  key1  |  key2  |  key3  |
+-----------+--------+--------+--------+
|       100 | value1 | value2 | value3 |
|       200 | value1 | value2 | value3 |
+-----------+--------+--------+--------+

status_id变得唯一,因此我尝试使用INSERT来访问ON DUPLICATE KEY,但是我不知道该如何将密钥中的值变成插入的字段名称。 >

许多问候 凯文

1 个答案:

答案 0 :(得分:0)

您是否查看过数据透视表?可能会对您有帮助。

有用的链接:http://www.artfulsoftware.com/infotree/qrytip.php?id=78

其他具有类似问题的线程:MySQL pivot table