MySQL - Unstack表数据

时间:2014-10-09 13:34:31

标签: php mysql

在MySQL中我有一个看起来像这样的表:

ID     QBATCH    USERID    SEQUENCE     EVENT_DATA
--     ------    ------    --------     ----------
448      56       229         1          BEFORE
464      80       229         1          AFTER
496      80       229         2          AFTER

1391    128       955         1          AFTER
1448    148       955         2          AFTER
1693    148       955         3          AFTER
2549    148       955         4          AFTER

对于给定的用户ID,最多可能有5条记录 - 在'之前'1'和最多4'记录之后。我想做的是取消堆叠数据,看起来像这样:

ID1    QBATCH1    USERID1    SEQUENCE1    EVENT_DATA1    ID2    QBATCH2    USERID2    SEQUENCE2    EVENT_DATA2    etc...
448      56        229          1          BEFORE        464     80         229          1          BEFORE


1391    128        955          1          AFTER         1448    148        955          2          AFTER

我想(以某种方式)确保所有'之前'记录都在第一个位置而不依赖于'序列'号码,如果可能的话(因为'event_data'并不总是说'BEFORE')

我希望我正确地问这个并且有人有答案。如果我没有正确询问,请耐心等待。由于我不太了解MySQL,我尝试过的唯一事情就是导出数据并在其他应用程序(Excel,Access等)中使用它们,但似乎没有任何工作。我确信在MySQL中必须有一种方法。

任何帮助?

编辑:问题在于我不能依赖'序列'号码。我需要说'为这个用户ID获取第一条记录并将其放在第一位。获取此用户ID的第二条记录并将其置于第二个位置 - 无论序列号是什么

0 个答案:

没有答案