ordenamiento de agrupación jerárquica mySQL

Tengo un esquema que esencialmente se ve así:

<code>CREATE TABLE `data` (
  `id` int(10) unsigned NOT NULL,
  `title` text,
  `type` tinyint(4),
  `parent` int(10)
)
</code>

lostype campo es solo una enumeración donde 1 es un tipo de padre y 2 es un tipo de niño (en realidad hay muchos tipos, donde algunos deben comportarse como padres y otros como niños). losparent campo indica que un registro es el hijo de otro registro.

Sé que esto probablemente no sea ideal para la consulta que quiero construir, pero es con lo que tengo que trabajar.

Me gustaría ordenar y agrupar los datos para que los registros principales se ordenen portitle, y agrupados debajo de cada padre son los registros hijos ordenados portitle. Al igual que:

<code> ID | title       |type |parent 
--------------------------------
 4  | ParentA     | 1   |
 2  | ChildA      | 2   | 4
 5  | ChildB      | 2   | 4
 7  | ParentB     | 1   |
 9  | ChildC      | 2   | 7
 1  | ChildD      | 2   | 7
</code>

**Editar **

Deberíamos poder tomar eltype campo fuera de la imagen por completo. Siparent no es nulo, entonces debe agruparse debajo de su padre.

Respuestas a la pregunta(3)

Su respuesta a la pregunta