Как сгенерировать xml из php с колонкой mysql group? - PullRequest
1 голос
/ 05 февраля 2011

У меня есть таблица (электроника):

category     |   product
---------------------------
  Audio         mp3player
  Video           dvd
  Audio         cdplayer
  Video          bluray
  null            lcd

Я хочу вывод:

<cat label='Audio'>
      <pro label='mp3player' />
      <pro label='cdplayer' />
</cat>
<cat label='Video'>
      <pro label='dvd' />
      <pro label='bluray' />
</cat>
<pro label='lcd'/>

это возможно?

Примечание: это для дерева flex 3данные компонента.

1 Ответ

0 голосов
/ 23 февраля 2011

Вы можете получить то, что хотите, выполнив следующее. Предполагается, что ваша таблица называется catprod, а столбцы - cat и prod:

select concat('<cat label=''',cat,'''>'

    ,GROUP_CONCAT(concat('<prod label=''',prod,''' />') SEPARATOR '')

    ,'</cat>')

from catprod 

where cat is not null

group by cat

UNION

SELECT concat('<pro label=''',prod,'''/>') from catprod where cat is null;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...