Группа данных иерархии MySQL PHP group_concat

любая помощь была бы потрясающей. в настоящее время получен следующий запрос MySQL:

SELECT 
  GROUP_CONCAT( sp.`slug` SEPARATOR  '/' ) 
FROM  
  `category` sn,  `category` sp 
WHERE 
  sn.lft BETWEEN sp.`lft` AND sp.`rgt` 
  AND sn.`id` =3 
ORDER BY 
  sp.`lft` ASC;

Без функции group_concat это возвращает желаемые результаты в правильном порядке. как только я применяю group_contact, порядок становится некорректным. Кто-нибудь знает, как переписать запрос, чтобы дать мне желаемый объединенный результат и в правильном порядке?

Я в недоумении по этому поводу. Кстати, кто-нибудь знает, как его переписать, используя операторы «внутреннего соединения», в отличие от двух названий таблиц, цитируемых рядом друг с другом, поскольку я не понимаю, как это объединяет две таблицы.


person Adam    schedule 25.04.2013    source источник


Ответы (1)


Попробуй это:

SELECT 
  GROUP_CONCAT( sp.`slug` ORDER BY  sp.`lft` ASC SEPARATOR  '/' ) 
FROM  
  `category` sn,
INNER JOIN  `category` sp 
  ON sn.lft BETWEEN sp.`lft` AND sp.`rgt`
WHERE    
  sn.`id` =3 
person Stephan    schedule 25.04.2013