группировка подкатегорий в соответствии с sql-запросом категории

#mysql #sql

#mysql #sql

Вопрос:

У меня есть эти две таблицы

 /* CAT TYPE */

id  name
1   Application
2   Brand
3   Feature


/* CATEGORIES */
id  name                url     description            type 
1   Temperature     temperature     A complete range ...    1 
2   Hobo            hobo            Hobo Loggers            2   
3   USB             usb             USB loggers         3   
4   Humidity    humidity    Humidity Loggers    1 
  

И я хочу отобразить их в разделах каждой категории под типом Cat в порядке идентификатора типа Cat, а затем в порядке категорий от а доя.

Итак, я хочу выполнить sql-запрос, который сгруппирует все вышеперечисленное следующим образом:

 **Application**    
 - Temperature
 - Humidity

**Brand**    
 - Hobo

**Feature**    
 - USB
  

Это мой текущий запрос

 SELECT * FROM categories 
JOIN cat_type ON categories.type=cat_type.id
GROUP BY cat_type.id
  

Но это группирует только одну категорию из каждого cat_type. Я не уверен, как заставить его отображать их все.

Комментарии:

1. Я думаю, вам нужно упорядочить, а не группировать. Замените GROUP BY cat_type.id на ORDER BY cat_type.id, categories.name в вашем запросе

Ответ №1:

Кажется, вы ищете особый порядок, а не группу. Попробуйте это:

 SELECT cat_type.Name as 'Heading', categories.name as 'Name' FROM categories 
JOIN categories_type ON categories.type=cat_type.id
ORDER BY cat_type.id
  

Комментарии:

1. Да, я думал об этом, но тогда как мне получить заголовок для каждого типа?

2. @user2909486 Используйте Heading заголовок в коде презентации.

3. @user2909486 Помогает ли это? Вы бы приняли ответ?